IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

[RegExp] Nom de fichier avec $


Sujet :

Langage Perl

  1. #1
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut [RegExp] Nom de fichier avec $
    Bonjour

    Tiens, je butte aujourd'hui !
    Je dispose d'un ensemble de fichiers compilé Java, c'est à dire des fichier class. Je veux pouvoir les copier avec un script Perl. Seulement, certains de ces fichiers class ont un $ à l'intérieur de leur nom (Toto$1.class par exemple). J'ai écrit ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if($file=~/class/){
    			chomp $file;
    			#print $file."\n";
    			my $newfile = $file;
    			$newfile =~ s/\/home\/gldavid\/Desktop\/JAVA/\/home\/gldavid\/TOTO/;
    			$newfile =~ s/\$/\\\$/g;
    			#print $newfile."\n";
    			my $cmd = "cp ".$file." ".$newfile;
    			system($cmd);
    		}
    L'effet étant de pouvoir neutraliser le dollar contenu dans le nom du fichier. Seulement, ce n'est pas suffisant et pas mal de fichiers de ce style ne peuvent être copiés. Comment faire pour améliorer ma copie sans erreurs ?

    Merci d'avance.

    @++

    GLDavid, apparemment pas réveillé.
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  2. #2
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Finalement, j'ai résolu le problème grâce à : http://search.cpan.org/~nwclark/perl...b/File/Copy.pm.
    Cependant, je serais curieux de savoir pouquoi certains de mes fichiers n'étaient pas pris tout à l'heure.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  3. #3
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    C'est parce que system() avec un seul argument transmet la commande à un shell, qui a donc essayé d'interpréter le $ (que tu n'as pas touché dans $file)...
    Pour éviter ça, soit tu traites aussi $file (pas seulement $newfile), soit tu utilises system() avec plusieurs arguments pour que perl utilise directement l'appel système pour l'exécuter plutôt que de faire appel à un shell intermédiaire.

    --
    Jedaï

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/05/2006, 11h11
  2. [DOM] Problème d'accent sur les noms de fichier avec mon parseur
    Par ujoodha dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 06/04/2006, 21h55
  3. Réponses: 7
    Dernier message: 07/01/2006, 15h18
  4. Réponses: 3
    Dernier message: 12/07/2005, 13h33
  5. changement de nom de fichier avec smartupload
    Par bourvil dans le forum ASP
    Réponses: 2
    Dernier message: 24/05/2004, 14h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo