2012年3月26日月曜日

連続したタイムスタンプを持ったファイルを作成する

Linuxで何日か以上前のファイルを消すとかのバッチの
境界値テストとかでときどき欲しいと思い、
いつも試行錯誤してコマンド組み立てるけど、忘れてしまうため、メモ。


例えば31日以前のファイルを削除するという時には
30日前、31日前、32日前のファイルを用意して、
31日前と32日前 のファイルが消えることを確認したい。
そんな時は下記のコマンド。

for TDATE in `seq 30 32` ; do touch -d `date +%Y%m%d  -d "${TDATE} days ago"` ${TDATE}.txt ; done

3つくらいだったら手で作っても良いけど30日分まとめて作るときとかは便利。