Вчера вечером у меня был сценарий, немного сходят с ума и создают набор каталогов между 3:00 и 3:09. Существует ли быстрый один лайнер, который выследит их и удалит их для меня?
Если вы можете найти первый и последний (хронологические) каталоги, которые хотите удалить, вы можете использовать find:
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
Вы можете попробовать это, если вы работаете только в одном каталоге и 5-е поле в ls -ltrog
вывода - это время.
ls -ltrog | awk '$5~/03:0[0-9]/{$1=$2=$3=$4=$5="";gsub("^ +",""); cmd="rm \047"$0"\047";system(cmd) }'
просто используйте find
find . -type d -newermt "2010-03-31 0300" -and \( -not -newermt "2010-03-31 0310" \) -exec rm -rf {} \;