Добавьте следующие строки перед строками визуальных уведомлений, чтобы дать сценарию представление о том, на каком дисплее X следует запускатьnotify-send
(или любое другое приложение X):
export DISPLAY=:0
export XAUTHORITY=/var/lib/lightdm/.Xauthority
Конечно, вы должны изменить вторую строку в соответствии с окружением вашего рабочего стола (или диспетчером отображения ). Эта строка отлично работает для Ubuntu 16.04, которая использует unity в качестве рабочего стола и lightdm в качестве диспетчера отображения.
(из этого поста)
С GNU grep
или совместимым:
<myfile head -n 3 | grep -aEo '\w+' | wc -l
слова в этом случае представляют собой последовательности из одного или нескольких буквенно-цифровых символов или знаков подчеркивания.
-121 ---279543 -Это ожидаемое поведение, так как когда процесс, управляющий терминалом, завершает работу, он отправляет SIGHUP
всем своим дочерним процессам, чтобы уведомить их о том, что терминал повесил трубку. То, как SIGHUP
обрабатывается дочерним процессом, зависит только от дочернего процесса. Перевод процесса в фоновый режим не блокирует сигналы, он просто отсоединяет дочерний процесс от терминала. Чтобы заблокировать сигнал отбоя , вы должны запустить свою программу с nohup
, например. nohup myprogram &
. Это должно сработать в большинстве случаев.