Куда девается вывод скрипта, который был запущен при запуске? [duplicate]

На этот вопрос уже есть ответ здесь:

У меня есть скрипт, который запускается при запуске из rc.local, я никуда не перенаправляю вывод.

Когда я впервые написал его, я запустил его в оболочке, он работал, как я ожидал, и постоянно выводил символы из stdout на экран, поэтому я добавил path/to/myscript в rc.local и больше ничего не думал об этом.

Недавно, когда я запускал php скрипт в командной строке через SSH shell, я заметил, что когда были проблемы с соединением (между моим терминалом и SSH сервером), это означало, что stdout с точки зрения php скрипта было некуда девать и скрипт "застревал", пока соединение не улучшалось и stdout снова не начинал работать.

Это заставило меня задуматься, не следует ли мне действительно направлять вывод моего стартового скрипта куда-нибудь, хотя бы в /dev/null, если вывод меня не интересует.

Но главный вопрос в том, каковы последствия того, что я этого не делаю? Есть ли какой-то буфер, который станет "забитым" и помешает скрипту работать, или вывод просто будет проигнорирован?

0
задан 16 October 2014 в 00:04

1 ответ

Обычно системный запуск, пишущий сценарий stdout, направлен к консольному устройству, если это не явно непосредственно в другом месте в рамках определенного сценария запуска.

0
ответ дан 6 October 2019 в 23:23

Другие вопросы по тегам:

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