特定のフォルダに多くの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