![Как запретить nohup создавать файл ~/nohup.out?](https://rvso.com/image/885960/%D0%9A%D0%B0%D0%BA%20%D0%B7%D0%B0%D0%BF%D1%80%D0%B5%D1%82%D0%B8%D1%82%D1%8C%20nohup%20%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D1%8C%20%D1%84%D0%B0%D0%B9%D0%BB%20~%2Fnohup.out%3F.png)
Я использую команду $ 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