- PR -

rmについて

投稿者投稿内容
ゆえる
ベテラン
会議室デビュー日: 2006/04/21
投稿数: 57
投稿日時: 2006-04-25 10:18
こんにちは

前回mvについて質問したのですが今回rmについて質問がありまして

mkdir -p /aaa/old/backup"`date +%Y%m%d`"

を使い毎日一回日付付きのファイルを作成しているのですが

前の日付のファイルを削除する場合どのようなコマンドで削除すればよろしいでしょうか?


20060424 20060425 のファイルがある場合、20060424を削除したい

ls /aaa/old/backup"`date +%Y%m%d`"

から色々やってみましたが前日の日付がでなくて・・・

教えていただけると嬉しいです。

よろしくお願いします。
はゆる
ぬし
会議室デビュー日: 2004/02/16
投稿数: 1008
お住まい・勤務地: 首都圏をウロウロと
投稿日時: 2006-04-25 10:37
こんにちは。

「昨日 日付 コマンド date」
あたりをキーワードに、検索エンジンで探すと、
ヒントが見つかりますよ。

あとは、マニュアルも一通り見てみましょう。
man 1 date です
ゆえる
ベテラン
会議室デビュー日: 2006/04/21
投稿数: 57
投稿日時: 2006-04-25 10:55
迅速な解答ありがとうございます。

検索した結果見つけることができました。

ありがとうございます。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-04-26 22:51
1日以上前のファイルを削除したいのであれば、

rm -rf `find . -mtite +1`

とする手もありますね。
はゆる
ぬし
会議室デビュー日: 2004/02/16
投稿数: 1008
お住まい・勤務地: 首都圏をウロウロと
投稿日時: 2006-04-27 13:23
「今日以外」 なら、

echo `find /aaa/old ! -name "backup¥`date +%Y%m%d¥`"`

とかも
# 「¥」 は半角にしてくださいね
あるかな
大ベテラン
会議室デビュー日: 2003/11/04
投稿数: 245
投稿日時: 2006-04-28 00:10
趣旨とは反するかもしれませんが、
find で抜き出すのではなく、
find のまま -exec rm {} \; を付加して
処理を渡しちゃうのもアリですよね。
-exec 付加しないで、出力結果だけ見て問題無ければ、
そのまま -exec 付加して実行すれば、望み通りに消せますし。
はゆる
ぬし
会議室デビュー日: 2004/02/16
投稿数: 1008
お住まい・勤務地: 首都圏をウロウロと
投稿日時: 2006-04-29 00:01
私、いつも -exec の存在を忘れちゃうんですよね orz
# すぐに 「パイプで繋いで〜」 って頭に……

find コマンドは、たくさんのオプションがあるので、
色々試してみるとおもしろいですね。
68user's page さんの find のページ は、
使用例や細かな解説がされていて、とても参考にさせていただきました
ゆえる
ベテラン
会議室デビュー日: 2006/04/21
投稿数: 57
投稿日時: 2006-04-29 08:48
お世話になっています。

findがあるのを忘れていました。(-execは初めて知りました。)
これを使っても処理できましたのでどちらか使ってみます。

ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)