Я использую команду $ 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
?
Можно перенаправить вывод где угодно, Вам нравится, например:
nohup /bin/bash -c "sleep 15 && python3 /home/orschiro/bin/show_state.py" >/dev/null 2>&1
перенаправление предотвращает выходной файл по умолчанию nohup.out
от того, чтобы быть созданным. /dev/null
забвение, поэтому если Вы не хотите данные вообще, отправьте его туда.
В ударе можно сократить >/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