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

Я написал код ниже, который будет показан весь mailID.

mailq | tail -n +2 | awk 'BEGIN { RS = "" } / root@'+`hostname`+'$/ { print $1 }'

пример: мое имя хоста как test.com, приведенный выше запрос будет отображать идентификатор всей почтовой очереди root@test.com

Вывод: вот так

295E36A10B7
270986A1407
26F296A1460
9099D6A02F8

но я попробую следующий запрос для отображения содержимого идентификатора почтовой очереди. Это не работает.

for i in mailq | tail -n +2 | awk 'BEGIN { RS = "" } / root@'+`hostname`+'$/ { print $1 }' ; do postcat -q $i >> maillog.log; postsuper -d $i; done ; 

что не работает. не могли бы вы дать идею для отображения всего содержимого почты.?

1 ответ1

0

Наконец я попробовал следующее решение. Это работает нормально.

array=($(mailq | tail -n +2 | awk 'BEGIN { RS = "" } / root@'+`hostname`+'$/ { print $1 }'));
for i in ${array[@]}; 
do 
postcat -q $i >> maillog.log;
 postsuper -d $i; 
done

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .