Retourner aux forums || Retourner au forum Linux.general
Linux.general : Bash:cmnt substituer le même prefix d'une série de fichiers...
Posté par GhZaaark3 () le 26 octobre 2004exemple: foo_bar* --> bar_bar*
et aussi comment les enlever: foo_bar* --> bar*
tout ce que j'arrive à faire, c'est rajouter des lettres devant et à la fin du mot.
merci
moué...
Re: Bash:cmnt substituer le même prefix d'une série de fichiers...
Bonjour,
juste peut être un petit jeu avec des expressions régulières et les notations :
${parameter##word}
et
${parameter%%word}
Exemple remplacement de prefixe (foo_bar* -> bar_bar*):
for i in foo_bar*
do
mv $i bar_${i##foo_}
done
Pour information, ${i##foo_} enlève le préfixe.
Exemple remplacement d'extensions (foo_bar*.C -> foo_bar*.c):
for i in foo_bar*.C
do
mv $i ${i%%.C}.c
done
Bon courage.
-
[^]Re: Bash:cmnt substituer le même prefix d'une série de fichiers...
Posté par Khanh-Dang (page perso, ) le 26/10/2004 à 08:37. (lien). Évalué à 5.Je ne sais pas pourquoi tout le monde fait toujours la faute.
Il faudrait TOUJOURS quoter les variables bash car si ces variables contiennent des noms avec des espaces - par exemple - ton script tombe à l'eau et parfois, ça peut être catastrophique (surtout quand il y a un rm dans le coin)
donc ici, il faudrait remplacer tous les $i par des "$i". C'est tout simple mais ça vous évitera bien des ennuis !
-
[^]Re: Bash:cmnt substituer le même prefix d'une série de fichiers...
Posté par GhZaaark3 () le 30/10/2004 à 19:25. (lien). Évalué à 1.justement c'est avec les expressions rationnels que j'essaye, mais j'ai du mal :)
j'ai essayer ton astuce, mais il ne fait que rajouter bar devant foo.
en fait, c'est une partie du nom d'un fichier que je veux zapper
exemple je veux changer ces fichiers:
boblegrand
bobleptit
boblegros
bobetc
en
joelegrand
joeleptit
joelegros
joeetc
voilà
merci--
moué...-
[^]Re: Bash:cmnt substituer le même prefix d'une série de fichiers...
-
Revenir en haut de page || Retourner aux forums || Retourner au forum Linux.general



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.