HP:аргументы в killall помимо `man killall`

Обобщенное решение с использованием grep с ароматом Perl:

$ a="gi_1 \t Dog;Pink;Blue;Beige;Yellow;Orange;Red;Green irish"
[s@SS data]$ echo $a | grep -P -o "((^gi_. \\\t )|(?<=[; ])(?:.(?!(([; ].+)){8}))+$)" | sed ':a;N;$!ba;s/\n/ /g'
gi_1 \t  Pink;Blue;Beige;Yellow;Orange;Red;Green irish

Обратите внимание, что это работает с любым количеством слов.

Группа без захвата и отрицательный просмотр вперед исключают любые символы, которые не следуют за повторяющейся последовательностью [; ] с последующими любыми символами.

Положительный взгляд вперед в начале избавляет от опережения [; \t] символ

Часть sed избавляется от новой строки между ними.

0
03.12.2017, 15:27
1 ответ

-HUP, которое вы читаете как три варианта, -H, -Uи -P, является примером того, что в синопсисе указано как -SIGNAL, то есть имя сигнала с префиксом тире.

Сигнал HUP— это сигнал «повесить -трубку», обычно посылаемый оболочке для его завершения.Этот сигнал также обычно используется, чтобы сообщить процессам-демонам (, например rsyslogd), что они должны повторно -прочитать свои файлы конфигурации или перезапуститься и т. д.

Команда killall -HUP rsyslogdотправляет сигнал HUPвсем процессам с именем rsyslogd.

Вы также можете использоватьpkill:

pkill -HUP rsyslogd

или, чтобы использовать сигнал номер вместо имени сигнала (проверьте номера с помощью kill -l, но почти никогда нет причин использовать номера ),

pkill -1 rsyslogd
1
16.12.2020, 07:17

Теги

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