Стандартный вывод префикса прежде, чем передать по каналу к команде

Можно 'вырыть @b.root-servers.net. нс для получения обновленных корневых подсказок (который необходимо периодически делать). Каждый корневой сервер DNS может возвратить корневые подсказки, поэтому, пока все корневые серверы не изменяются сразу, можно всегда получать ре обновлений: те, которые изменились от тех, которые не имеют.

2
задан 28 February 2012 в 18:34
2 ответа

Вы можете использовать подоболочку. Вы можете отправлять вывод из чего угодно, и все это будет проходить через конвейер.

(cat /foo ; echo bar ; pflogsumm <args> ) | sendmail <address>
4
ответ дан 3 December 2019 в 09:41

awk сделает то, что вы хотите.

Например,

# ps | awk ' { if (NR == 1) printf("Line 1\nLine 2\n"); print; }'
Line 1
Line 2
  PID TTY          TIME CMD
23071 pts/0    00:00:00 bash
25655 pts/0    00:00:00 ps
25656 pts/0    00:00:00 awk

Приведенный выше префикс строки printf перед вашим выводом.

Ваш пример будет

pflogsumm <args> | awk ' { if (NR == 1) printf("Line 1\nLine 2\n"); print; }' | sendmail <address>
1
ответ дан 3 December 2019 в 09:41

Теги

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