J'ai subi une récupération de données de mon disque dur.
A l'issue de cette dernière, tous mes fichiers ont étés renommés en file_0001, file_0002 ..
Il s'avère qu'à l'origine certains étaient déjà des doublons (copies de copies..).
Je souhaite donc faire un ménage de printemps.
Un ami m'a conseillé une commande mais ca a été fait un peu rapidement et unbutu m'indique une "erreur de syntaxe près du "if"." aussi je sollicite votre assistance.
Ligne de commande entrée :
touch foo; for i in ls do j=md5sum $i; if grep $j foo then rm $i else écho $j>> foo fi; done; rm foo
L'explication de mon ami qui m'a écrit ca :
"Je créé un fichier, je calcule une empreinte de tous les fichiers du rep. Si l'empreinte existe, j'efface le fichier sinon je la rajoute dans le fichier foo qui contient donc une liste d'empreinte unique. A la fin, j'efface le fichier foo.
Si quelqu'un peut m'aider à trouver la bonne syntaxe afin que je puisse faire mon nettoyage de printemps.
Merci.
Partager