특정 폴더에 많은 zip 파일이 있습니다. 매일 파일명과 파일 크기를 CSV 형식으로 캡쳐해서 crontab에 넣어서 매일 보고하고 각 보고서에 메일로 보내려고 합니다.
파일 위치 /somedirectory/archive/test
:
-rw-rw-r--+ 1 AAAA AAAA 9.3M May 30 17:09 XXXXX_20140530_0401_28.txt.gz
-rw-rw-r--+ 1 AAAA AAAA 9.3M May 30 17:09 XXXXX_20140530_0401_29.txt.gz
-rw-rw-r--+ 1 AAAA AAAA 9.3M May 31 17:09 XXXXX_20140531_0401_01.txt.gz
이제 매일 실행하고 매일 준비하는 것과 동일한 CSV를 캡처할 cronjob을 만들고 싶습니다.
예
test30052014.csv:
"XXXXX_20140530_0401_28.txt.gz", "9.3","May 30"
"XXXXX_20140530_0401_29.txt.gz", "9.3","May 30"
test31052014.csv:
"XXXXX_20140531_0401_01.txt.gz", "9.3","May 31"
CSV 파일을 생성한 후에는 crontab을 통해서도 이메일을 보낼 수 있습니다.
답변1
나는 다음을 사용할 것이다:
find . -maxdepth 1 -type f -exec stat --format=\"%n\",%s,\"%y\" {} \;
첨부된 CSV를 이메일로 보내려면 다음을 사용할 수 있습니다.
find . -maxdepth 1 -type f -exec stat --format=\"%n\",%s,\"%y\" {} \; > output_$(date +%F).csv && echo "PFA" | mail -s "subject" -a output_$(date +%F).csv