頻繁にソフトウェアをリリースしたり、バックアップデータを毎日作成する場合、日付文字列をファイル名につけておくと管理が楽です。
しかし、わざわざ日付文字列を手動で入力するのは面倒な上、間違いも起ります。そこで、dateコマンドを使って、自動的に今日の日付を取得し、ファイル名に含めるようにします。
TODAY=`date +%Y%m%d`
tar cf ${TODAY}.tar ./foo
Makefile 内でも同じように使えるので、便利です。
~/Documents ディレクトリを ~/Backup/documents-日付.tar.gz としてバックアップするシェルスクリプトの例.
#!/bin/bash
mydate=`date +%Y%m%d`
# mydate=`date +%Y_%m_%d_%H%M` # 日付時間まで入れる場合
backupfile=documents-${mydate}.tar
echo $backupfile
doBackup(){
cd $HOME
tar cf $HOME/Backup/$backupfile Documents
gzip $HOME/Backup/$backupfile
}
doBackup