Pages : 1
#1 Le 19/02/2009, à 18:03
- dahu_fou
renommer les extensions fichiers en console
Bonjour à tous.
sur mon serveur j'ai besoin de renommer un dossier qui contient une centaine de photos :
elles se nomment : PICT15678.JPG par exemple et je voudrais renommer tous les fichiers en PICT15678.jpg
j'ai tenté un
mv *.JPG en *.jpg
sans succès...
quelqu'un pour m'aider ?
je precise que tout cela doit se faire OBLIGATOIREMENT par la console.
merci de votre aide:)
Dernière modification par dahu_fou (Le 21/02/2009, à 14:26)
http://nicotux.wordpress.com/
Hors ligne
#2 Le 19/02/2009, à 18:09
- johnlege
Re : renommer les extensions fichiers en console
for i in *.JPG
do
j=`echo $i|sed 's/JPG$/jpg/'`
mv $i $j
done
Merci d'indiquer résolu dans le titre quand c'est résolu
Hors ligne
#3 Le 19/02/2009, à 18:14
- alexduf
Re : renommer les extensions fichiers en console
si tu veux en une seule ligne tu peux aussi :
ls -1 *.JPG | awk '{printf("%s %s.jpg\n",$0,substr($0,1,length($0)-4))}' | xargs -n2 mv
mais sous forme de petit script c'est peut-être plus propre
Hors ligne
#4 Le 19/02/2009, à 18:18
- gaston2150
Re : renommer les extensions fichiers en console
Je viens de tester ça et ça fonctionne bien :
ls -d *.JPG | sed 's/\(.*\).JPG$/mv "&" "\1.jpg"/' | sh
Dernière modification par gaston2150 (Le 19/02/2009, à 18:19)
L'expérience est le fruit de nos erreurs.
XP3000,Geforce6600GT,2HDD sata,A7N8X-E Deluxe
Serveur : P3 500Mhz, 384MoRam, Raid1 2x320Go
Hors ligne
#5 Le 19/02/2009, à 18:43
- zazake
Re : renommer les extensions fichiers en console
Il y a aussi la commande rename :
rename 's/JPG/jpg/' *
Hors ligne
#6 Le 19/02/2009, à 18:53
- dahu_fou
Re : renommer les extensions fichiers en console
La commande de johnlege fonctionne à merveille.
mais celle avec rename m'interpelle, car je ne trouve pas de doc sur cette commande !
en avez-vous histoire que je comprenne la syntaxe ?
merci de vos nombreuses (et rapides) réponses !
http://nicotux.wordpress.com/
Hors ligne
#7 Le 19/02/2009, à 21:27
- zazake
Re : renommer les extensions fichiers en console
La syntaxe de rename est celles des expressions régulières Perl. Une petite explication et un lien avec un tuto : http://www.commentcamarche.net/forum/af … e-commande. Et pour en savoir plus sur les expressions régulières qui sont des choses très puissantes : http://fr.wikipedia.org/wiki/Expression … li%C3%A8re.
Et bien sûr :
man rename
Hors ligne
#8 Le 19/02/2009, à 21:40
- alexduf
Re : renommer les extensions fichiers en console
Il y a aussi la commande rename :
rename 's/JPG/jpg/' *
comment il nous a calmé T_T
(gaston, sympa ton avatar ^^)
Hors ligne
#9 Le 19/02/2009, à 22:01
- dahu_fou
Re : renommer les extensions fichiers en console
ahh merci beaucoup tout le monde !
http://nicotux.wordpress.com/
Hors ligne
#10 Le 21/02/2009, à 14:35
- dahu_fou
Re : renommer les extensions fichiers en console
Encore une question car Piwigo me fait des misères avec mes noms de fichiers !!
jai des fichiers du type : tivoli (91).JPG
donc ok pour l'extension en *.jpg
par contre j'ai besoin de supprimer l'espace, le remplacer par un "_" et supprimer les parenthèses...
le
man rename
est succint...
il existe bien une commande magique !?
Dernière modification par dahu_fou (Le 21/02/2009, à 14:36)
http://nicotux.wordpress.com/
Hors ligne
#11 Le 21/02/2009, à 15:00
- alexduf
Re : renommer les extensions fichiers en console
après ce qu'a dit zazake, je dirais qu'un
rename 's/ /_/g' *
devrait faire l'affaire
Hors ligne
#12 Le 21/02/2009, à 15:31
- dahu_fou
Re : renommer les extensions fichiers en console
après ce qu'a dit zazake, je dirais qu'un
rename 's/ /_/g' *
devrait faire l'affaire
exact suivi d'un
rename 's/[()]//g' *
et le tour est joué.
pour ceux que ca interesse on peut simuler le renommage avec la commande
rename -n
http://nicotux.wordpress.com/
Hors ligne
Pages : 1