View previous topic :: View next topic |
Author |
Message |
Trevoke Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/31218531845533c508386c.jpg)
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Fri May 23, 2008 5:24 am Post subject: [REGEXP] Renommer plusieurs fichiers |
|
|
J'utilise amarok recemment et, en fait, ma collection de musique est un bordel absolument innommable. J'ai essaye leur outil pour re-organiser plusieurs fois, et maintenant j'ai un bon paquet de fichiers dans des repertoires et sous-repertoires avec .mp3.mp3.mp3.mp3 par exemple.
Comment puis-je les renommer de facon a ce qu'ils aient juste .mp3 ... Sans le faire a la main? Je commence a peine avec regexp et je ne sais pas comment faire ca.
Merci ![Smile :)](images/smiles/icon_smile.gif) _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
xaviermiller Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/18949772545903151f2312b.jpg)
Joined: 23 Jul 2004 Posts: 8723 Location: ~Brussels - Belgique
|
Posted: Fri May 23, 2008 7:22 am Post subject: |
|
|
une expression du genre /\(.mp3\)+/\1/ _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
truc Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/128604942846f4cd99d01cb.jpg)
Joined: 25 Jul 2005 Posts: 3199
|
Posted: Fri May 23, 2008 10:00 am Post subject: |
|
|
en bash(pour la fonctionnalité 'process substitution'<(command), on peut le faire autrement, mais c'est moins joli.. :p):
Code: | while read line ; do mv -v "$i" "${i//mp3.}" ; done < <(find music/ -name '*.mp3' ) |
ça devrait le faire, ça supprime toutes les chaines mp3. dans le noms et les chemins... donc, si t'as 'mp3.' dans tes chemins ça ne marchera pas si bien...
EDIT: ah oui, désolé, j'lai fait sans regex du coup :/ _________________ The End of the Internet! |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Bapt Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/21244105134ae58e959ad49.jpg)
Joined: 14 Apr 2003 Posts: 1152 Location: Paris
|
Posted: Fri May 23, 2008 1:05 pm Post subject: |
|
|
en zsh
Code: | zmv '(**)/(*).mp3' '$1/${2//.mp3*/}.mp3' |
A la racine de ton rep ou tu as les mp3 et il va récursivement renommer tes fichiers mp3, pas besoin de regex. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Trevoke Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/31218531845533c508386c.jpg)
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Fri May 23, 2008 10:54 pm Post subject: |
|
|
Sauf qu'il ne connait pas zmv ![Sad :(](images/smiles/icon_sad.gif) _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Bapt Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/21244105134ae58e959ad49.jpg)
Joined: 14 Apr 2003 Posts: 1152 Location: Paris
|
Posted: Sat May 24, 2008 6:08 am Post subject: |
|
|
autoload -U zmv |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
bob1977 Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
![](images/avatars/164334334041632ed16967b.gif)
Joined: 16 Mar 2004 Posts: 387
|
Posted: Sat May 24, 2008 8:18 am Post subject: |
|
|
En renommant tes fichiers par un logiciel autre qu'amarok, tu risques de perdre les données que amarok a associé à chacun d'eux comme la note que tu mets au morceau, les paroles, les labels...
Je ne suis pas sûr à 100% mais essaye avec un avant de tout renommer pour voir si tu perds des informations. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
El_Goretto Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
![](images/avatars/74235356747da926429d8b.jpg)
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Mon May 26, 2008 7:04 am Post subject: |
|
|
Ya pas des outils comme rename(shell?) ou krename(kde), pour éviter les migraines le week-end? _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Pixys l33t
![l33t l33t](/images/ranks/rank_rect_4.gif)
![](images/avatars/866311894778da0f5e480.jpg)
Joined: 23 May 2005 Posts: 669
|
Posted: Mon May 26, 2008 11:43 am Post subject: |
|
|
le file manager Thunar permet de renommer facilement plusieurs fichiers d'un coup. Si tous tes fichiers on le même nombre de ".mp3" c'est assez facile... |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Trevoke Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/31218531845533c508386c.jpg)
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Fri Jun 06, 2008 12:07 am Post subject: |
|
|
Je me dois d'avouer que j'etais curieux et j'ai essaye la solution zsh.. Ben .. Elle n'a pas marche pour moi! _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Bapt Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/21244105134ae58e959ad49.jpg)
Joined: 14 Apr 2003 Posts: 1152 Location: Paris
|
Posted: Fri Jun 06, 2008 5:58 am Post subject: |
|
|
La solution n'a pas marchée pour toi car j'ai fait une typo dans ma ligne :
Code: | zmv '(**/)(*).mp3' '$1/${2//.mp3*/}.mp3' |
c'est mieux comme ça désolé.
Pour un peu plus de détail : chaques choses entre () va devenir un $? ou ? va de 1 à n
**/ c'est un globbing qui veux dire dans tous les reps recursivement
donc $1 deviens le chemin ou le fichier mp3 a été trouvé
$2 correspond au (*) donc au nom de fichier dans la dernière extension ".mp3"
${2//.mp3/} je remplace dans $2 tout le texte commençant par .mp3 et suivit de n'eimporte quoi par rien
j'obtiens donc un nom de fichier sans extensions auquel je rajoute l'extention .mp3
pour tester il est mossible de mettre un -n après zmv qui montera les commandes mv qui seront executées par zmv |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
|