Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Renommer des fichiers à la chaine
Envoyé par: Wanoo14

Bonjour à tous,

Je suis débutant sous Linux, et actuellement en plein classement de 5000 photos. J'utilise un vieux pentium II 400 qui lutte un peu quand je travaille avec l'interface graphique. Aussi je souhaite gérer un maximum de photos en ligne de commande. J'ai lu le Truc et Astuces sur ce sujet :

[lea-linux.org]

Mais je souhaite rajouter l'extension .jpg à des photos qui n'en n'ont plus (gThumb ne les prend pas en compte, sinon), ex:

shanghai-1016 -> shanghai-1016.jpg

La marche à suivre indique comment remplacer une chaîne de caractères, mais pas comment en rajouter. J'ai eu beau essayer rename avec toutes les combinaisons de * et de ? auxquelles j'ai pu penser, rien à faire, zsh me repond que "no match found".

Merci pour votre aide,

Cordialement,

Erwann

Poste le Wednesday 31 August 2005 02:03:51
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: nicola

Citation

for i in * do; mv $i $i.jpg; done
Pour tester et contrôler que ça marche, remplace d’abord mv par echo.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Wednesday 31 August 2005 07:19:16
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: zelaurent

Bonjour,

Encore plus simple et super pratique : installe krename ! en quelques cliques ton bonheur tu assurera !

Poste le Wednesday 31 August 2005 09:08:11
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: tg(y)

Je ne connaissais pas rename, ça peut être pratique... Mais c'est inadapté ici...

Poste le Wednesday 31 August 2005 11:04:08
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: zelaurent

Pas rename mais krename, c'est un petit logiciel pour kde qui permet de renommer-deplacer ses fichiers. Je l'utilise pour mes photos. Tu lui indique un ou plusieurs cas de renommage, une liste de fichiers a renommer et un répertoire cible ou les deplacer (optionnel).

Il est intégré a konqueror : tu sélectionne tes fichiers et tu clique droit, dans le menu actions tu as l'option krename.

Poste le Wednesday 31 August 2005 11:12:02
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: diancech

Citation
zelaurent
Pas rename mais krename, c'est un petit logiciel pour kde qui permet de renommer-deplacer ses fichiers.

Oui mais Wanoo14 veux une solution en ligne de commande, parce que son pc as du mal en graphique. ;-)

--------------------------------------------------------------------------------------------------------------------------------------------------
Exige beaucoup de toi-même et attends peu des autres. Ainsi beaucoup d'ennuis te seront épargnés. Confucius

Poste le Wednesday 31 August 2005 11:26:56
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: zelaurent

Ah ok ok ok !

désolé.

Poste le Wednesday 31 August 2005 11:40:16
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: stephane liardet

pas des plus élégant mais ça marche (en bash faut sans doute adapter pour zsh):

for file in * ; do
        TEMP=$( echo ${file%.*})
        echo "$file => $TEMP.jpg" # a remplacer par mv $file $TEMP.jpg après les tests smiling smiley
done

Là toutes les extentions sont supprimées puis on redonne l'extention *.jpg à tous les fichiers.
On pourrait faire plus propre en récupérant l'extention et en la changeant que si elle est différente de jpg.

il y a peut être aussi possibilité d'utiliser find pour trouver tous les fichiers qui n'ont pas l'extention *.jpg, mais j'ai pas trouvé la bonne syntaxe sad smiley.

Poste le Wednesday 31 August 2005 13:00:03
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: Wanoo14

Merci à tous !!

La solution de Nicola a marché impeccable ! Il juste fallu que j'enlève le
; done
à la fin de la commande sinon j'obtenais
zsh: parse error near done
et que je supprime l'instruction do, car elle me créait (avec echo) un fichier do et un autre do.jpg !!

Ce sont mes débuts sous Linux, et je suis impressionné par la réactivité de la communauté sur les forums ! Merci encore,

Erwann

Poste le Wednesday 31 August 2005 13:08:06
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: tg(y)

Ça, c'est une incompatibilité Zsh/Bash, non ?

Poste le Wednesday 31 August 2005 13:11:13
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: footix06

et si il y a des blancs dans le nom de fichier, comment fait on ?

Poste le Wednesday 31 August 2005 13:33:33
Répondre     Citer    
Re: Renommer des fichiers à la chaine
Envoyé par: nicola

Normalement le shell gère ça de manière transparente, c’est-à-dire comme si de rien n’était.
En effet, ma solution était en bash.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Wednesday 31 August 2005 17:54:08
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Renommer des fichiers à la chaine
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons