Renommer extension linux
Fermé
lucien_dg
Messages postés
4
Date d'inscription
mercredi 14 septembre 2005
Statut
Membre
Dernière intervention
29 septembre 2005
-
14 sept. 2005 à 16:35
vic - 4 juil. 2013 à 20:24
vic - 4 juil. 2013 à 20:24
A voir également:
- Renommer extension linux
- Extension dat - Guide
- Renommer plusieurs fichiers - Guide
- Extension .bin - Guide
- Extension 7z - Guide
- Changer extension fichier - Guide
7 réponses
Phiphi57
Messages postés
789
Date d'inscription
samedi 26 février 2005
Statut
Contributeur
Dernière intervention
19 juillet 2009
295
14 sept. 2005 à 16:58
14 sept. 2005 à 16:58
c'est sans doute pas la méthode la plus élégante...
en console :
attention aux ` qui sont différents de ' ou de " !!
j'ai mis un "cp" au lieu de "mv" car je pense que c'est plus sur....
ensuite
si ca a fait ce que tu voulais
Phiphi
en console :
for i in `find . -name "*.x"` do cp $i ${i%.x}.y done
attention aux ` qui sont différents de ' ou de " !!
j'ai mis un "cp" au lieu de "mv" car je pense que c'est plus sur....
ensuite
for i in `find . -name "*.x"` do rm $i done
si ca a fait ce que tu voulais
Phiphi
Encore plus rapide :
rename 's/ext1$/ext1/' *.ext1
voir man rename !
rename 's/ext1$/ext1/' *.ext1
voir man rename !
Herr Dr von Apfelstrudel
Messages postés
198
Date d'inscription
lundi 29 janvier 2007
Statut
Membre
Dernière intervention
10 février 2010
181
1 févr. 2009 à 18:37
1 févr. 2009 à 18:37
Salut,
find repertoire -name "*.ext1" -exec rename .ext1 .ext2 {} \;
lucien_dg
Messages postés
4
Date d'inscription
mercredi 14 septembre 2005
Statut
Membre
Dernière intervention
29 septembre 2005
15 sept. 2005 à 08:36
15 sept. 2005 à 08:36
Merçi bien
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour, je voudrais faire la même chose, à une petite différence :
j'ai toto.ext1, je veux toto.ext2
Avec le bout de code proposé, j'ai toto.ext1.ext2
Pouvez vous m'aider ?
j'ai toto.ext1, je veux toto.ext2
Avec le bout de code proposé, j'ai toto.ext1.ext2
Pouvez vous m'aider ?
Super c'est ce que je cherchais
Faut que je bosse le shell, je perdrai moins de temps.
Merci pour la commande
Faut que je bosse le shell, je perdrai moins de temps.
Merci pour la commande
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
28 déc. 2009 à 09:00
28 déc. 2009 à 09:00
Des solutions sympas, mais pas performantrs, pourquoi ne pas utiliser un pipe avec xargs et rename ?
johand@hathor:~/tmp$ for i in $(seq -f %03.0f 0 999); do echo $i > $i.ext1 ; done
ohand@hathor:~/tmp$ time for file in $(find . -type f -name '*ext1') ; do rename 's/ext1$/ext2/' $file; done
real 1m16.643s
user 1m8.228s
sys 0m8.501s
johand@hathor:~/tmp$ time find . -type f -name '*ext2') |xargs rename 's/ext2$/ext1/' $file; done
bash: syntax error near unexpected token `)'
johand@hathor:~/tmp$ time find . -type f -name '*ext2' | xargs rename 's/ext2$/ext1/' $file
real 0m0.551s
user 0m0.344s
sys 0m0.220s
jjohand@hathor:~/tmp$ uname -a
Linux hathor 2.6.31-16-generic #53-Ubuntu SMP Tue Dec 8 04:01:29 UTC 2009 i686 GNU/Linu
On voit les différences en temps d'exécution.....
johand@hathor:~/tmp$ for i in $(seq -f %03.0f 0 999); do echo $i > $i.ext1 ; done
ohand@hathor:~/tmp$ time for file in $(find . -type f -name '*ext1') ; do rename 's/ext1$/ext2/' $file; done
real 1m16.643s
user 1m8.228s
sys 0m8.501s
johand@hathor:~/tmp$ time find . -type f -name '*ext2') |xargs rename 's/ext2$/ext1/' $file; done
bash: syntax error near unexpected token `)'
johand@hathor:~/tmp$ time find . -type f -name '*ext2' | xargs rename 's/ext2$/ext1/' $file
real 0m0.551s
user 0m0.344s
sys 0m0.220s
jjohand@hathor:~/tmp$ uname -a
Linux hathor 2.6.31-16-generic #53-Ubuntu SMP Tue Dec 8 04:01:29 UTC 2009 i686 GNU/Linu
On voit les différences en temps d'exécution.....