Rechercher : dans
Par :

Script perl pour renommer des fichiers

Dernière réponse le 30 jun 2009 à 20:58:35 machin, le 13 jun 2009 à 12:29:33 
 Signaler ce message aux modérateurs

Bonjour,
je voudrais savoir comment est il possible de renommer une liste de fichiers contenue dans un répertoire unix.
ex: j'ai un repertoire qui se nomme rbFT et qui contient FT_001_A.doc .... jusqu'à FT_804_A.doc en FT_001.doc...FT_804.doc.
j'aimerai taper cela en un simple script pour qu'il puisse faire ce travail en l'executant sous perl si possible.
Un grand merci d'avance.

Configuration: Windows XP
Firefox 2.0.0.20

Meilleures réponses pour « script perl pour renommer des fichiers » dans :
Perl - Les fichiers Voir La notion de filehandle On appelle filehandle (traduisez descripteur de fichier), dans un programme Perl, le nom permettant de manipuler une connexion d'entrée-sortie (les entrées-sorties standards vues précédemment sont connues par les filehandles...
Renommer plusieurs fichiers en batch VoirLe fait de renommer un grand nombre de fichiers peut très vite devenir fastidieux. Heureusement, il existe des outils permettant d'automatiser cette tâche dans un grand nombre de cas : Fonctionnalités natives Utilisation d'un programme...
Perl - Caractéristiques du langage VoirFichier source, et interprétation Le fichier source d'un programme écrit en Perl est un simple fichier texte dont l'extension est par convention .pl. Ce fichier source doit être un fichier texte non formatté, c'est-à-dire un fichier texte dans sa...

2

x11r6, le 13 jun 2009 à 16:37:10
Répondre à x11r6

3

machin, le 13 jun 2009 à 22:22:38

Merci pour le lien mais ce n'est pas ce que j'attendais.
j'aimerai avoir le script entier.
"rename" ne fonctionne pas.
j'ai fait un truc comme
#!usr/bin/perl -w

user strict;

which (<>)
{
s/_A/" ";
}

ensuite sur mon invite de commande je tape le nom de mon script mais je ne peux l'appliquer pour le dossier contenant la fameuse liste de fichiers, donc je suis bloquer pour renommer ces fichiers.
merci pour l'aide.

Répondre à machin

4

jipicy, le 14 jun 2009 à 14:13:46

Salut,

Une solution en shell "bash" :

[tmpfs]$ ls -1
FT_001_A.doc
FT_002_A.doc
FT_003_A.doc
FT_004_A.doc
FT_005_A.doc
FT_006_A.doc
FT_007_A.doc
FT_008_A.doc
FT_009_A.doc
[tmpfs]$ for fic in *;do mv ${fic} ${fic/_A/};done
[tmpfs]$ ls -1
FT_001.doc
FT_002.doc
FT_003.doc
FT_004.doc
FT_005.doc
FT_006.doc
FT_007.doc
FT_008.doc
FT_009.doc
[tmpfs]$
;-))
$ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

5

 Le manu, le 30 jun 2009 à 20:58:35

Bonjour,
Pour des infos completes sur les fichiers et perl :
http://perl.developpez.com/sources/?page=section1

Répondre à Le manu