Как добавить строку в командную строку bash?
Я уверен, что это повторяющийся вопрос, но мне не удалось найти ответ, который бы соответствовал моей проблеме.
Что я хочу сделать, это что-то вроде этого:
alias disexit = " & disown & exit"
gnome-calculator disexit
Так что будет запускать командную строку
gnome-calculator & disown & exit
Следовательно, в результате будет запущен экземпляр калькулятора, а за ним не будет терминала, без необходимости писать все целиком вручную.
Если возможно, я бы хотел, чтобы этот псевдоним был постоянным.
3 ответа
Это не так alias
работает (и AFAIK то, что вы хотите, не может быть сделано без изменения bash
само по себе), но если вы не возражаете против немного другого синтаксиса, вы можете добавить что-то вроде
disexit(){
"$@" & disown & exit
}
на ваш .bashrc
(чтобы сделать эту функцию постоянной), и вызвать ее как
disexit gnome-calculator
Вы не можете сделать это с псевдонимом. Однако вы можете написать код функции:
disexit() { "$1" & disown & exit; }
Но вам нужно будет назвать это наоборот:
disexit gnome-calculator
Это самое близкое к вашим требованиям bash
синтаксис.
Чтобы сделать его постоянно доступным, просто добавьте определение функции в ~/.bashrc
,
Ты не можешь просто бежать nohup
перед желаемой командой? Как в
nohup gnome-calculator &