- - PR -
シェルスクリプトでファイルの世代管理
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-01 12:52
お世話になります。
シェルスクリプトを実行すると、下記のようなファイル名ができます。 _db2ful_20060201124142.tar(_db2ful_`date +%Y%m%d%H%M%S`.tar) これを含めて最新10世代をあるディレクトリに保存するような シェルスクリプトが必要なのですが、こういうのって一般的によくある話だと思います。 ひょっとしたら、一行で実現できるような簡単な話しなのかもしれません。 ご存知の方がいらっしゃいましたら、ご教授よろしくお願いします。 | ||||
|
投稿日時: 2006-02-01 15:45
ファイル名でいつ作成されたのか判断するのでしょうか? 私が作る場合は、ファイルを作成した日時(タイムスタンプ)をfindコマンドで引っ掛けて その後に実行するコマンドを流しています。 | ||||
|
投稿日時: 2006-02-01 16:00
ファイル名の行をソート
尻から10行取り出し それが、残すファイル。 [ メッセージ編集済み 編集者: MMX 編集日時 2006-02-01 16:46 ] | ||||
|
投稿日時: 2006-02-01 19:47
ファイルがあるディレクトリで実行。
やっつけ感があるから、あまり好きなやり方じゃないけど。 cp -p $(ls _db2ful_*.tar | cut -b9- |sort -n | tail -10|sed -e s/^/"_db2ful_"/) 格納ディレクトリ ・単純にこれでもいいかも。 cp -p $(ls -tr | tail -10) 格納ディレクトリ |
1