Commande pour renommer des fichiers

Pheatlon -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous

j'ai dans un répertoire plus de 5000 images que je dois renommer. j'ai testé plusieurs commandes trouvées sur le site mais aucune n'arrive à faire ce que je veux.

mes images sont de la forme :

t_hdjkshdkjqsdhkjq.jpg


et je voudrais que ça devienne:

t_picture_hdjkshdkjqsdhkjq.jpg


Merci à tous et joyeuses fêtes

5 réponses

  1. El_Rigolo Messages postés 2288 Statut Contributeur 607
     
    Salut,

    C'est quoi la distrib' de ton linux?
    0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    T'as pas trouvé ton bonheur ou ?
    0
  3. nanobis Messages postés 1311 Date d'inscription   Statut Membre Dernière intervention   114
     
    Essayer cette commande , d'abord sur des fichiers test !

    $ for i in t_hdj*; do mv $i' echo $i | sed */ hdj*/s//t_picture_hdjkshdkjqsdhkjq.jpg/"'

    Sans aucune garantie.......:o(
    0
    1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      Sans aucune garantie
      C'est le moins qu'on puisse dire ;-((

      Elle est pleine d'incohérences ta syntaxe...

      for i in t_hdj*
      le point commun c'est plus l'extension que le nom, donc mieux vaudrait : for i in *.jpg, non ?


      do mv $i' echo $i
      Si tu ne mets pas d'espace entre les 2 variables c'est pas gagné et de plus de simple quote ne suffisent pas à exécuter la commande ;-\
      do mv ${i} $(echo ...)

      sed */ hdj*/
      Inutile de mettre un motif puisque c'est tous les fichiers correspondant au "for i in ..." qui vont être parsés. De plus attention quand tu donnes une syntaxe, ton 1er guillemet est en fait une étoile ;-(

      s//t_picture_hdjkshdkjqsdhkjq.jpg/"'
      Là à la fin tu n'auras plus qu'un seul fichier dans le répertoire ;-(((
      sed 's/\(t_\)\(.*\)/\1picture-\2/'

      Un simple :
      for i in *.jpg; do mv ${i} ${i/t_/t_picture_}; done
      devrait suffire ;-))
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. jeanbi Messages postés 15399 Date d'inscription   Statut Contributeur Dernière intervention   2 383
     
    bonjour,
    tu utilises digikam avec les plugins renome en masse c'est au poil
    sinon xnview mais en anglais tres rapide
    a+
    0