ファイル名に現在の日付を追加したいです。添付ファイルを電子メールで送信するとき。
私のスクリプト:
#!/bin/sh
clear
now=`date +"%m_%d_%Y"`
mutt -s "Reports $now" [email protected] -a /path/Reports.xlsx < /path/mailmessage.txt
しかし、電子メールの件名ではなく、現在の日付とファイル名が必要です。ファイルは毎日変更され、電子メールで送信されます。
例:Reports_08032017.xlsxが電子メールで受信されました。
可能ですか?
助けてくれてありがとう。
答え1
メッセージの送信後に削除できる必要なファイル名で一時コピーを作成します。
NOW=$(date +'%m_%d_%Y')
TMPCOPY="/tmp/Reports_$NOW.xlsx"
cp "/path/Reports.xlsx" "$TMPCOPY"
mutt -s "Reports $NOW" [email protected] -a "$TMPCOPY" < /path/mailmessage.txt
rm "$TMPCOPY"
答え2
ファイルを生成するときにこれを行うのが最善ですが、次のように名前を変更することもできます。
today=$(date +%m-%d-%Y)
file="/path/Reports.xlsx"
nfile="/path/Reports-$today.xlsx"
mv $file $nfile