6

昨夜、スクリプトを少し狂わせて、午前3時から午前3時9分までの間にたくさんのディレクトリを作成しました。これらを追い詰めて私のために取り除く簡単なライナーはありますか?

4

3 に答える 3

6

削除する最初と最後の(時系列の)ディレクトリを検索できる場合は、次の検索を使用できます。

find . -newer first -not -newer last -type d

そして、出力があなたに合っている場合は、削除してください

find . -newer first -not -newer last -type d -print0 |  xargs -0 rmdir

または明示的な日付スタンプ付き:

find . -newermt "2010-03-31 0300" -not -newermt "2010-03-31 0310" -type d
于 2010-04-01T12:51:32.770 に答える
1

1つのディレクトリで作業していて、ls -ltrog出力の5番目のフィールドが時間である場合は、これを試すことができます。

ls -ltrog | awk '$5~/03:0[0-9]/{$1=$2=$3=$4=$5="";gsub("^ +",""); cmd="rm \047"$0"\047";system(cmd) }'
于 2010-04-01T12:52:36.457 に答える
0

単に検索を使用します

find . -type d -newermt "2010-03-31 0300" -and \( -not -newermt "2010-03-31 0310" \) -exec rm -rf {} \;
于 2010-04-01T12:51:00.760 に答える