[ Scripts ] Renomage massif et recursif avec masques

Renomage massif et recursif avec masques [ Scripts ] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 09-04-2004 à 15:59:06    

Je cherche a faire un script qui me permeterai  
de renomer masivement des fichier du type :
"nom artiste - titre CHANSON ([:num]).mp3"
en
"Nom Artiste - Titre Chanson.mp3"
 
J'ai bien fait un man mv mais ça répond pas à toutes les questions,
surtout celles liées au masque "([:num])"
 
Help me :)

Reply

Marsh Posté le 09-04-2004 à 15:59:06   

Reply

Marsh Posté le 09-04-2004 à 16:24:52    

avec sed?


---------------
Fluctuat nec mergitur
Reply

Marsh Posté le 09-04-2004 à 16:30:18    

mp3rename & cie

Reply

Marsh Posté le 09-04-2004 à 16:46:05    

Si j'ai bien compris, tu veux mettre en majuscule la premiere lettre de chaque mot, et en minuscule les autres. C'est bien ça ?


---------------
Jean Pierre.
Reply

Marsh Posté le 09-04-2004 à 17:01:27    

oui ;)
je veux aussi enlever les "(xx)"

Reply

Marsh Posté le 09-04-2004 à 17:05:07    

je sens que je vais scripter en php :/

Reply

Marsh Posté le 09-04-2004 à 18:08:15    

j-'-r a écrit :

je sens que je vais scripter en php :/

n'importe quoi ...

Reply

Marsh Posté le 09-04-2004 à 18:36:02    

Et pourquoi pas ?
J'ai pas envis de me fatiguer avec ça;  
en php c'est vite fait bien fait et je maitrise :D
 
C'est clair que dans le principe c'est crade, mais ca marche.
Promis la prochaine foi je bash ;)
 
PS: Jure moi que tu ne fais jamais des trucs crades de ce type ?

Reply

Marsh Posté le 09-04-2004 à 18:42:38    

mais y a plein d'outils et en beaucoup plus simple ... et toi tu nous sors tes manies de tout faire en php, ce que je trouve particulièrement ridicule.
 
déjà je ne comprends pas pourquoi tu n'utilises pas mp3rename et ses amis, je suis sur que tes morceaux ont des id3 ok
 
mp3rename -s ?(&a)‐&t‐&b?
mp3rename *
 
et tout sera terminé

Reply

Marsh Posté le 09-04-2004 à 18:48:50    

Voici un script shell à essayer et adapter:

#
# cfn - Capitalize File Names
#  
 
CapitalizeFileName() {
  awk '{
    cmde = "mv \"" $0 "\" ";
    gsub(/-/," - " );
    gsub(/\(.*\)/,"" );
    for (i=1; i<=NF; i++)
         $i = toupper(substr($i,1,1)) tolower(substr($i,2))
    new_name = sprintf("\"%s\"",$0);
    if (new_name != $0) {
      cmde = cmde new_name;
      print cmde;
      system(cmde);
    }
  }'
}
 
if [ $# -ne 0 ]
then
   for file; do
     echo "$file"
   done | CapitalizeFileName
else
   CapitalizeFileName
fi


 
Utilisation:
 
cfn "nom artiste - titre CHANSON ([:num]).mp3"  
 
ou
ls *.mp3 | cfn


---------------
Jean Pierre.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed