2010-04-01 9 views

Répondre

6

Si vous pouvez rechercher les premier et dernier (chronologique) répertoires que vous souhaitez supprimer, vous pouvez utiliser trouver:

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

Et si la la sortie vous convient, allez pour la suppression

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

ou avec dateurs explicites:

find . -newermt "2010-03-31 0300" -not -newermt "2010-03-31 0310" -type d 
+0

En cours d'exécution ceci donne le drapeau xargs: guillemet simple sans correspondance; Par défaut, les guillemets sont spéciaux pour xargs sauf si vous utilisez l'option -0 –

0

utiliser simplement trouver

find . -type d -newermt "2010-03-31 0300" -and \(-not -newermt "2010-03-31 0310" \) -exec rm -rf {} \; 
+0

Ceci supprime les répertoires avec tout leur contenu, pas seulement les fichiers. – alk

1

vous pouvez essayer, si vous travaillez dans un seul répertoire et le 5 champ de la sortie ls -ltrog est le temps.

ls -ltrog | awk '$5~/03:0[0-9]/{$1=$2=$3=$4=$5="";gsub("^ +",""); cmd="rm \047"$0"\047";system(cmd) }'