파일 이름에 현재 날짜를 추가하고 싶습니다. 첨부파일을 이메일로 보낼 때.
내 스크립트:
#!/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