Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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

Watael a écrit :

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)