如何告诉mut发送所有文件而不是今天的文件?

时间:2018-04-30 12:41:16

标签: mutt

如何告诉mut,附上所有* .csv文件,但不是今天的活动csv文件,其中仍然记录应用程序在后台运行..

Actuall脚本:

mutt -s "$(date -d 'now' +%Y_week%V)" -a /var/log/app/*.csv -- example@example.com

由于

1 个答案:

答案 0 :(得分:0)

如果文件名排序正确(即它们都采用yyyy-mm-dd.csv格式),那么您可以执行以下操作:

mutt -s "$(date -d 'now' +%Y_week%V)" -a $(find /var/log/app/ -maxdepth 1 -name \*\.csv | sort -r | sed '1d') -- example@example.com

这将对最近的文件名进行排序,sed调用将丢弃最上面的文件名。这只有在您确定今天的文件已存在时才有效。如果不是这样,你将省略昨天的。

如果你需要这个,即使今天的文件还没有,你可以这样做:

mutt -s "$(date -d 'now' +%Y_week%V)" -a $(find /var/log/app/ -maxdepth 1 -name \*\.csv | grep -v "$(date +%Y-%m-%d.csv)") -- example@example.com

如果格式不同,您当然需要更改$(date +%Y-%m-%d.csv)调用以生成您要排除的文件名。