
Я использую команду $ nohup ...
для запуска приложения в фоновом режиме, чтобы потом можно было закрыть окно терминала.
После выполнения создается файл ~/nohup.out
.
Пример:
orschiro@x230:~$ nohup /bin/bash -c "sleep 15 && python3 /home/orschiro/bin/show_state.py"
nohup: ignoring input and appending output to 'nohup.out'
Как я могу предотвратить nohup
создание nohup.out
?
решение1
Вы можете перенаправить вывод куда угодно, например:
nohup /bin/bash -c "sleep 15 && python3 /home/orschiro/bin/show_state.py" >/dev/null 2>&1
nohup.out
перенаправление предотвращает создание выходного файла по умолчанию . /dev/null
это забвение, поэтому, если вам вообще не нужны данные, отправьте их туда.
В bash вы можете сократить >/dev/null 2>&1
до&>/dev/null
Для программ, которые я часто использую, я создаю псевдоним (и добавляю его в свой .bashrc
), например
alias show_state='nohup /bin/bash -c "sleep 15 && python3 /home/orschiro/bin/show_state.py" >/dev/null 2>&1'
Теперь мне осталось только напечататьshow_state