#1 Le 23/03/2017, à 12:53
- ClarusAD67
[RÉSOLU] shell : commande find et caractère jocker
Salut,
Je souhaiterais "nettoyer" un disque dur externe en supprimant tous les fichiers commençant par un point suivit d'un soulignement : "._".
Par exemple :
/chemin/répertoire/._fichierA.txt et /chemin/répertoire/._fichierB.txt etc...
Avant de faire une erreur irréparable, j'aimerais savoir si les commandes suivantes sont justes :
cd /media/Toto/disqueDurUsb
find ./ -name ._\* -exec rm {} \;
Merci
Dernière modification par ClarusAD67 (Le 24/03/2017, à 09:00)
Hors ligne
#2 Le 23/03/2017, à 13:06
- Watael
Re : [RÉSOLU] shell : commande find et caractère jocker
salut,
ça paraît correct.
pour éviter l'échappement, tu peux mettre l'expression entre guillemets, ou entre apostrophes.
pour vérifier que les fichiers remontés sont les bons, tu peux ajouter un echo dans l'exec, avant le rm.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 23/03/2017, à 16:02
- gigiair
Re : [RÉSOLU] shell : commande find et caractère jocker
Pour une opération aussi dangereuse ça me paraîtrait une bonne idée d'utiliser une corbeille.
https://doc.ubuntu-fr.org/trash-cli
find /media/Toto/disqueDurUsb -name \.\_ -exec trash '{}' \; 2>/dev/null
--
JJR.
Hors ligne
#4 Le 23/03/2017, à 16:19
- Watael
Re : [RÉSOLU] shell : commande find et caractère jocker
le point n'a pas à être protégé, pas plus que le soulignement; et sans joker aucun fichier ne risque de matcher.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 23/03/2017, à 16:23
- gigiair
Re : [RÉSOLU] shell : commande find et caractère jocker
le point n'a pas à être protégé, pas plus que le soulignement; et sans joker aucun fichier ne risque de matcher.
Au temps pour moi. Le lecteur attentif aura corrigé de lui même. C'était juste pour signaler l'existence de la corbeille en ligne de commande qu'il me paraît prudent d'utiliser pour cette commande pouvant être ravageuse.
--
JJR.
Hors ligne
#6 Le 23/03/2017, à 16:53
- Watael
Re : [RÉSOLU] shell : commande find et caractère jocker
+1
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#7 Le 24/03/2017, à 09:11
- ClarusAD67
Re : [RÉSOLU] shell : commande find et caractère jocker
@gigiair +1 !
Je connaissais pas trash-cli, du coup je m'empresse de l'installer ; mais le truc, c'est de perdre l'habitude d'utiliser le rm. Et ça, c'est pas gagné :-/ Car comme dit dans la doc : un alias c'est pas terrible.
Pour en revenir à mon histoire, je me suis même fendu d'un ! -wholename pour exclure une partie de l'arborescence :
find ./ -name ._\* ! -wholename "/Chemin/RépertoireÀexclure/" -exec rm {} \;
Ça peut aider d'autres.
Dernière modification par ClarusAD67 (Le 24/03/2017, à 09:12)
Hors ligne
#8 Le 24/03/2017, à 13:35
- Compte anonymisé
Re : [RÉSOLU] shell : commande find et caractère jocker
petit détail,
la commande find propose l'option -delete qui peut remplacer le -exec rm {} \;
Dernière modification par Compte anonymisé (Le 24/03/2017, à 13:36)