Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[REGEXP] Renommer plusieurs fichiers
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Fri May 23, 2008 5:24 am    Post subject: [REGEXP] Renommer plusieurs fichiers Reply with quote

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 :)
_________________
Votre moment detente
What is the nature of conflict?
Back to top
View user's profile Send private message
xaviermiller
Administrator
Administrator


Joined: 23 Jul 2004
Posts: 8133
Location: ~Brussels - Belgique

PostPosted: Fri May 23, 2008 7:22 am    Post subject: Reply with quote

une expression du genre /\(.mp3\)+/\1/
_________________
Kind regards,
Xavier Miller
Back to top
View user's profile Send private message
truc
Advocate
Advocate


Joined: 25 Jul 2005
Posts: 3199

PostPosted: Fri May 23, 2008 10:00 am    Post subject: Reply with quote

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
View user's profile Send private message
Bapt
Veteran
Veteran


Joined: 14 Apr 2003
Posts: 1152
Location: Paris

PostPosted: Fri May 23, 2008 1:05 pm    Post subject: Reply with quote

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
View user's profile Send private message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Fri May 23, 2008 10:54 pm    Post subject: Reply with quote

Sauf qu'il ne connait pas zmv :(
_________________
Votre moment detente
What is the nature of conflict?
Back to top
View user's profile Send private message
Bapt
Veteran
Veteran


Joined: 14 Apr 2003
Posts: 1152
Location: Paris

PostPosted: Sat May 24, 2008 6:08 am    Post subject: Reply with quote

autoload -U zmv
Back to top
View user's profile Send private message
bob1977
Guru
Guru


Joined: 16 Mar 2004
Posts: 387

PostPosted: Sat May 24, 2008 8:18 am    Post subject: Reply with quote

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
View user's profile Send private message
El_Goretto
Moderator
Moderator


Joined: 29 May 2004
Posts: 3102
Location: Paris

PostPosted: Mon May 26, 2008 7:04 am    Post subject: Reply with quote

Ya pas des outils comme rename(shell?) ou krename(kde), pour éviter les migraines le week-end?
_________________
-Gentoo hardened [EoL]: µ-serv Gen8 G1610T, 8Go ECC ; NF9D-2700, 4Go
-FreeBSD 11/Vimage/Jails: DS61, i3 2100T, 16Go ; FreeNAS: µ-serv N40L, 8Go ECC
-Réseau: ERL-3 + ESL-24 + GS108Tv2
-NAS: RN312
Back to top
View user's profile Send private message
Pixys
l33t
l33t


Joined: 23 May 2005
Posts: 669

PostPosted: Mon May 26, 2008 11:43 am    Post subject: Reply with quote

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
View user's profile Send private message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Fri Jun 06, 2008 12:07 am    Post subject: Reply with quote

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
View user's profile Send private message
Bapt
Veteran
Veteran


Joined: 14 Apr 2003
Posts: 1152
Location: Paris

PostPosted: Fri Jun 06, 2008 5:58 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum