# Traiter 47 000 fichiers dans le terminal...



## xcam (5 Mai 2022)

Bonjour j'aimerai ajouter une extension à 47000 fichiers 

Ex :
1650111914.M817376P1318333.pdx1-sub0-mail-mx208,S=44910,W=46441:2, 
1650184341.M105416P821011.pdx1-sub0-mail-mx211,S=34537,W=35122:2,
1650116827.M242674P22653.pdx1-sub0-mail-mx209,S=69263,W=70676:2,   
1650184759.M572675P670335.pdx1-sub0-mail-mx206,S=38218,W=39025:2,
1650145875.M111410P3531293.pdx1-sub0-mail-mx202,S=1065,W=1106:2,   
1650195480.M306915P1073428.pdx1-sub0-mail-mx211,S=58601,W=59396:2,
1650162905.M900033P300504.pdx1-sub0-mail-mx206,S=10020,W=10264:2,  
1650196762.M104684P3789774.pdx1-sub0-mail-mx204,S=1225,W=1272:2,

si je tape en prenant 1 fichier :

sudo mv 1650111914.M817376P1318333.pdx1-sub0-mail-mx208,S=44910,W=46441:2,    1650111914.M817376P1318333.pdx1-sub0-mail-mx208,S=44910,W=46441:2,.eml

ça fonctionne

Mais si je tape :
sudo mv 16501* 16501*.eml

J'ai cette erreur :

mv: 16501*.eml is not a directory

Et là ça dépasse largement mes compétences 

Est-ce qq'un aurait une idée !?

Merci par avance pour vos retours !


----------



## macomaniac (5 Mai 2022)

Bonjour *xcam*

Tes fichiers sont-ils tous recelés dans un unique dossier ?


----------



## xcam (5 Mai 2022)

Bonjour *macomaniac* 

Oui !


----------



## macomaniac (5 Mai 2022)

Je te conseille par précaution d'effectuer une copie préallable du dossier original. Ce dossier original je l'appelle pour l'exemple *BROL*.

- dans le *terminal* > commence par passer une commande :​

```
cd [chemin_à]BROL
```

où tu peux taper *cd* > créer un espace libre > puis faire un glisser-déposer du dossier *BROL* dans le *terminal*  --> ce qui va inscrire automatiquement le chemin au dossier et son intitulé > enfin exécuter la commande. La commande déplace la localisation des opérations dans le dossier *BROL*.

- puis passe la commande (copier-coller direct) :​

```
for i in *; do mv "$i" "$i.eml"; done
```

la commande utilise une boucle *bash* pour renommer en lot tous les objets inclus dans *BROL* en leur ajoutant l'extension *.eml*
​- la commande passée > tu peux enchaîner sur la commande de vérification :​

```
ls | sort
```

qui affiche en colonne la liste des fichiers qui devraient tous se terminer par l'extension *.eml*.


----------



## xcam (6 Mai 2022)

Oh putain Edouard 
 Ta commande est magique !

```
for i in *; do mv "$i" "$i.eml"; done
```

Merci infiniment macomaniac !!!


----------



## macomaniac (6 Mai 2022)

Content pour toi !


----------

