ファイルサイズ、名前、日付をCSVファイルとしてキャプチャし、電子メールで送信するシェルスクリプトとcrontabはありますか?

ファイルサイズ、名前、日付をCSVファイルとしてキャプチャし、電子メールで送信するシェルスクリプトとcrontabはありますか?

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

おすすめ記事