접미사-특정 mailId 컨텐츠의 로그를 작성하고 제거하십시오.


0

메일 대기열의 특정 메일 ID에 대한 모든 메일 내용이 포함될 로그 파일을 작성해야합니다.

모든 mailID가 표시되는 아래 코드를 작성했습니다.

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

예 : 위의 쿼리에는 test.com 이라는 내 호스트 이름 에 root@test.com 의 모든 메일 큐 ID가 표시 됩니다.

출력 : 그렇게

295E36A10B7
270986A1407
26F296A1460
9099D6A02F8

그러나 메일 대기열 ID의 내용을 표시하기 위해 다음 쿼리를 시도합니다. 작동하지 않습니다.

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

작동하지 않습니다. 모든 메일 내용을 보여주는 아이디어를 줄 수 있습니까?

답변:


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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.