Как создать источник файла .bashrc непосредственно после закрытия и сохранения?

Например, в моем файле .bashrc есть функция:

function open_bashrc() {
    gedit ~/.bashrc
    source ~/.bashrc
}

Так что где бы я ни был, если я наберу open_bashrc, то откроется файл .bashrc. Я могу открыть его и изменить, но после сохранения и закрытия он не выполняет второй шаг source .bashrc. Вместо этого мне приходится самому набирать source ~/.bashrc. Почему? Что не так с функцией?

0
01.07.2017, 03:40
2 ответа

У меня есть это в моем файле псевдонимов, и это работает:

псевдоним bashrc='vim ~/.bashrc && source ~/.bashrc'

1
28.01.2020, 02:45

Может ли быть так, что в вашем контексте выполнения geditне разрешается как исполняемая программа gedit, а как сценарий оболочки, функция или псевдоним, который выполняет gedit в фоновом режиме ? В противном случае я не вижу причин, по которым источник не должен выполняться.

Собственно, &&я бы не использовал, как предложил полвоазул. Это решение приведет к тому, что.bashrc будет получен только в том случае, если gedit вернется с нулевым кодом выхода. Хотя мы, безусловно, должны надеяться, что программа с хорошим -поведением должна завершаться с 0, если все прошло хорошо, я видел достаточно программ, которые не заботятся о кодах выхода, а справочная страница gedit ничего не говорит о коде выхода., что технически означает, что код выхода не указан. Я бы не хотел, чтобы мои функции зависели от этого...

0
28.01.2020, 02:45

Теги

Похожие вопросы