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 :

[langage] unlink ?!


Sujet :

Langage Perl

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut [langage] unlink ?!
    Bonjour,

    J'ai un soucis avec la fonction unlink qui ne supprime rien du tout chez moi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    chdir($dir) || die ("Erreur chdir \n") ;
    foreach (<*.all>) {
      unlink($_) || die ("Erreur suppression \n") ;
    }
    j'ai comme erreur "perlglob nest pas reconnue en tant que commande interne ou externe....."

    Je veux juste me placer dans le repertoire $dir et supprimer un fichier en .all ....

    help, merci !

  2. #2
    Membre actif
    Avatar de Choupi
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 223
    Points : 235
    Points
    235
    Par défaut
    Aucune erreur chez moi. Changement de repertoire et suppression. L'erreur nous dit que perglob manque. Verifie ton path.
    MacOS 10.5 / Ubuntu / C / Python / R
    Pensez au tag résolu

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    N'utiliserais-tu pas Perl2exe par hasard ?

    Parce que si oui, il faut que tu passes par du opendir(), du readdir() pour récupérer la liste des fichiers à supprimer.

  4. #4
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par Choupi
    Aucune erreur chez moi. Changement de repertoire et suppression. L'erreur nous dit que perglob manque. Verifie ton path.
    c koi ca perlglob ?

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    Voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    my $dir = "c:\\ANA";
    my $file = "graphes.all" ;
    my $filesupp = $dir . '\\' . $file ;
    print "a supp : $filesupp\n" ;
    unlink($filesupp) || die ("Erreur suppression \n") ;
    Ca ne marche pas ! Pourquoi ?

    Je tourne sous perl5.6.1.exe

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Remplace la dernière ligne par ça STP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    unlink($filesupp) || die ("Erreur suppression : $! \n") ;
    $! contient l'erreur qui provoque le die()

  7. #7
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    c'est pire ca me dit "Erreur suppression : permission denied"


  8. #8
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Citation Envoyé par myjuna
    c'est pire ca me dit "Erreur suppression : permission denied"

    ça signifie que tu n'as pas les droits pour supprimer ce fichier, ni même pour l'éditer.

    Peut être est-il utilisé (du moins, ton NT le croit-il) par une appli qui tourne en fond ?

    Peut-tu supprimer "à la main" ce fichier ?

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    oui a la main je peux ! ... l'editer, tout ce que je veux...
    et le meme code sur la machine d'un collegue fonctionne a la perfection !

  10. #10
    Membre actif
    Avatar de Choupi
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 223
    Points : 235
    Points
    235
    Par défaut
    Citation Envoyé par myjuna
    c koi ca perlglob ?
    J'ai trouvé ca sur un site:

    Citation Envoyé par un site
    Glob: Retourne la valeur de EXPR en tenant compte de l'expansion des noms de fichiers telle que le shell standard Unix /bin/sh la ferait. C'est la fonction interne qui implémente l'opérateur <*.c> mais vous pouvez l'utiliser directement. Si EXPR est omis, $_ est utilisé à la place.
    Donc perlglob doit faire ca mais ca ne doit pas être portable. J'en sais pas plus.

    Question, sans la suppression tu peux changer de repertoire ? creer un fichier dedans avec perl ?
    MacOS 10.5 / Ubuntu / C / Python / R
    Pensez au tag résolu

  11. #11
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    jai dl http://www.sysinternals.com/files/NTFILMON.ZIP et checke niveau systeme que mon fichier nest pas utilise par une autre appli qd je tente de leffacer... il ne lest pas !

    il y a un autre truc que je pige pas bien : pourquoi est ce quon ecrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    open(ALLGRAPHS,"$dirANA/graphes.all") ;
    qui correspond a c:/ANA/graphes.all

    mais : avec $filesupp qui correspond a c:\ANA\graphes.all

    / \ :

  12. #12
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par Choupi
    Question, sans la suppression tu peux changer de repertoire ? creer un fichier dedans avec perl ?
    non changer de repertoire je ne peux pas non plus....
    creer des fichiers la ou je veux oui je peux par contre.

  13. #13
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    J'ai trouvé !!!!

    C'est tout simplement parce que j'ouvrais ce fichier dans un autre script et j'avais oublié de le refermer...

    mais la ou je comprends pas cest quil aurait du generer une erreur quand je tentais de le RE ouvrir non?

    bon ouf

  14. #14
    Membre actif
    Avatar de Choupi
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 223
    Points : 235
    Points
    235
    Par défaut
    Si pas de die dans ton script... Non...
    Sinon pour info tu as un bouton "editer" tes messages, ca evite d'avoir a lire 3 ou 4 messages de la meme personne. Pense au resolu egalement si c'est fini...
    MacOS 10.5 / Ubuntu / C / Python / R
    Pensez au tag résolu

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

Discussions similaires

  1. [langage] unlink trop bavard
    Par Greg01 dans le forum Langage
    Réponses: 5
    Dernier message: 20/07/2004, 22h52
  2. [langage] Je cherche un bon livre ?
    Par Anonymous dans le forum Langage
    Réponses: 13
    Dernier message: 09/04/2003, 13h16
  3. [langage] comment créer des fichiers ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 05/05/2002, 16h33
  4. Comparer des fichiers de données : Quel Langage ?
    Par Anonymous dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 24/04/2002, 22h37
  5. Cours, tutoriels, logiciels, F.A.Q,... pour le langage SQL
    Par Marc Lussac dans le forum Langage SQL
    Réponses: 0
    Dernier message: 04/04/2002, 10h21

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