Renommer rapidement une liste de fichiers

Résolu
pinchy -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'ai des fichiers du type :
001/23.jpg
...
241/66.jpg
242/66.jpg
243/67.jpg
...

Je souhaiterais supprimer le slash avec une commande dans le terminal et le remplacer par un tiret par exemple.

Quelle commande dois-je utiliser ?

merci de votre aide
A voir également:

4 réponses

Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   261
 
Voila un exemple en bash qui remplace le backslash par un tiret dans tous les noms de fichier du répertoire courant :
#!/bin/bash 
for NAME in ./*\\* 
do 
  NNAME='tr "\\\" "-" <<<$NAME' 
  mv $NAME $NNAME 
done; 

;-) Flachy Joe ;-)
Membre de l'association Olympe-Network
Ma clef PGP publique est disponible dans mon profil.
1
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Ou tout simplement en utilisant le remplacement de paramètres :

#!/bin/bash 
for NAME in * 
do 
  mv "${NAME}" "${NAME//\//-}" 
done;
0
Enjolras_ Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   11
 
bonjour,
je suppose que terminal signifie shell
Dans ce cas, en bash ou zsh (je ne connais pas les autres)
tu peux utliser la commande sed

#!bin/sh 
for NOM in /ton/dossier/* 
do 
mv $NOM $(sed -e  s/foo/bar/g) 
done 

Keep It Simple and Stupid !

Il faut s'empresser de secourir ceux qui en ont besoin, sans que jamais rien de venal ne vienne approcher une intention si pure ! (ROUSSEAU)
1
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,

Quel système ?
Quel langage ?
0
pinchy
 
Finalement j'utilise automator sur mac ;)

merci pour votre aide
-3