linux-본문이 파일의 텍스트 줄인 전자 메일 보내기-날짜에 따라 다름


1

하루에 한 번 me@example.com으로 전자 메일을 보내고 메시지 본문으로 날짜에 따라 파일의 텍스트 줄을 포함하는 cron 작업을 추가하고 싶습니다.

내 file.txt는 다음과 같습니다.

10-16-18 green
10-17-18 brown
10-18-18 blue
....
10-01-20 purple

예를 들어 날짜는 10-16-18입니다. 본문에 "brown"이 포함 된 이메일을받습니다. 파일에는 결국 수백 줄이있을 수 있습니다.


10-16-18 줄에 "녹색"이 있지만 그 다음 줄에 "갈색"텍스트를 보내시겠습니까?
Xen2050

답변:


1

파일에서 원하는 줄을 가져오고 나머지 줄을 반환합니다. 둘 이상의 줄이 일치하면 모든 줄이 인쇄됩니다.

awk '$1 == "'`date '+%m-%d-%y'`'" { print substr($0, 10) }' file.txt | mail ...

;exit앞에 추가하여 첫 번째 일치로만 제한 할 수 }있습니다.

또한 10일치하는 길이입니다. 당신이 년을 원한다면 당신은을 변경할 수 있습니다 %y%Y1012.

예를 들어, 오전 6시에 크론 작업을 수행하려면 다음을 크론 탭에 넣으십시오.

0 6 * * * awk '$1 == "'`date '+%m-%d-%y'`'" { print substr($0, 10) }' file.txt | mail -s SUBJECT me@example.com


이 문제에 대해 신속하고 정확하게 답변 해 주셔서 감사합니다.
Mike
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.