#1 Le 20/12/2010, à 12:37
- pfff
[RESOLU]Ignorer les espaces dans commandes Find
Bonjour
J'ai créé un script qui permets de trouver dans un dossier donné les fichiers de + de 30 jours et de les effacer:
find /media/masociete/Scan -type f -mtime +30 |xargs -r rm
/media/masociété étant un serveur Nas.
Seulement dan ce dossier Scan, il y a des fichiers qui ont été renommé avec des espaces. Du coup Find cherche un fichier avec le premier mot, puis le second etc.
Comment dire à Find d'ignorer les espaces?
Dernière modification par pfff (Le 20/12/2010, à 13:05)
Hors ligne
#2 Le 20/12/2010, à 12:44
- cedric.amouyal
Re : [RESOLU]Ignorer les espaces dans commandes Find
essaye ca
find /media/masociete/Scan -type f -mtime +30 |xargs-t -i rm -v "{}"
ou
find /media/masociete/Scan -type f -mtime +30 -exec rm -v {} \;
Dernière modification par cedric.amouyal (Le 20/12/2010, à 12:45)
Hors ligne
#3 Le 20/12/2010, à 13:05
- pfff
Re : [RESOLU]Ignorer les espaces dans commandes Find
Merci, la seconde semble etre la bonne.
a vior demain si la tache Cron s'execute bien ;-)
Merci pour cette réponse rapide.
Hors ligne
#4 Le 20/12/2010, à 13:16
- biotechman
Re : [RESOLU]Ignorer les espaces dans commandes Find
il peut être intéressant de garder une trace des opérations effectuées, pour celà utilises à la fin de ta commande
| tee nomDeFichierLog
May the source be with you
http://biotechman.com/wordpress
Hors ligne
#5 Le 21/12/2010, à 02:05
- ehmicky
Re : [RESOLU]Ignorer les espaces dans commandes Find
Sinon :
find /media/masociete/Scan -type f -mtime +30 -delete
Y'a pas de verbose, mais c'est plus rapide, et dans des cas comme rm -R, ça évite des problèmes.
Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?
Hors ligne
#6 Le 21/12/2010, à 07:14
- pode
Re : [RESOLU]Ignorer les espaces dans commandes Find
Comment dire à Find d'ignorer les espaces?
C'est directement prévu dans find (option -print0) et xargs (option -0) : le caractère séparateur n'est plus alors l'espace mais le null byte
find /media/masociete/Scan -type f -mtime +30 -print0 |xargs -0 -r rm
Mais s'il s'agit juste de faire des suppressions, la solution de ehmicky est à privilégier.
Ce sera utile pour une autre fois
Hors ligne
#7 Le 21/12/2010, à 07:19
- pfff
Hors ligne