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

Réseau Discussion :

Test sur existence Fichier


Sujet :

Réseau

  1. #1
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut Test sur existence Fichier
    Bonjour,

    je dois créer un script qui se lance chaque dix minutes et qui se connecte sur un serveur distant, test sur l'existance d'un fichier, s'il le trouve il le récupére, sinon, il ne fais rien, et écris dans un log , la date et l'heure de la connection.

    j'ai essayé de voir avec nlist, mais j'ai pas su m'en sortir.

    alors une petite aide serai la bienvenue.


    et merci d'avance.

  2. #2
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Bonjour,

    Est-ce que tu as essayé de récupérer la sortie de la commande LIST ?
    Essaye peut-être ça, je donne vraiment sans tester désolé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    cmd=`LIST | grep monfichier`
    if [ cmd -neq 0 ]; then
        # Prendre le fichier
    fi
    Quelque chose dans le genre devrait fonctionner je pense.

  3. #3
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut
    Juste une information :

    Si je lance :

    quelles sont les valeurs de retour :

    et merci d'avance.

  4. #4
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    pourquoi pas plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if [ -e $FILEPATH ]
    then
       do_something
    else
       do_another_thing
    fi

  5. #5
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Car il est en ftp, et je ne sais pas si tu peux utiliser les même commandes qu'en console. Mais si oui, alors cette solution est parfaite !

  6. #6
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    Citation Envoyé par dbprog
    Car il est en ftp, et je ne sais pas si tu peux utiliser les même commandes qu'en console. Mais si oui, alors cette solution est parfaite !

    je ne pense pas... désolé, j'étais à côté de la plaque

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Pourquoi ne pas simplement ouvrir une session ftp dans un script bash et de faire un get sur le fichier recherché. S'il n'existe pas, il ne sera simplement pas transféré.

    Par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #! /bin/sh
     
    SERVEUR_FTP='ton-serveur.com'
    USER='ton_pseudo'
    MDP='xxxxxxxxxxx'
    SRC_DISTANT='/web/test.php'
    DEST_LOCALE='./nom.local.du.fichier'
     
    # connection ftp
    ftp -i -v -n $SERVEUR_FTP  <<FTP
    user $USER $MDP
    get $SRC_DISTANT $DEST_LOCALE
    bye
    FTP

  8. #8
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut
    Citation :
    ripat a dit:
    Pourquoi ne pas simplement ouvrir une session ftp dans un script bash et de faire un get sur le fichier recherché. S'il n'existe pas, il ne sera simplement pas transféré.
    ça ne me convient pas, car j'ai des traitement à lancer en cas d'existance du fichier, (si le fichier n'existe pas, je fais rien).

    Je suis en train de voir avec nlist :
    j'ai réussi à tester la présence du fichier et écrire vers un log.

    mais ce que je ne comprends pas, c'est les différentes valeurs de retour de NLIST, où puis je les trouver?

    et merci pour votre collaboration.

  9. #9
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Attention la commande est NLST et pas NLIST (selon la RFC en tout cas).
    As tu testé ma solution proposée plus haut ? Elle ne fonctionne pas ?

    http://abcdrfc.free.fr/rfc-vo/rfc0959.txt

  10. #10
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut
    Non, je confirme bien, la command est NLIST et pas nlst : (je travaille sur AIX).

    et j'ai testé ta méthode, mais ça donne rien, car le nlist est lancé après le ftp et on peut pas faire de

  11. #11
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Ok merci pour l'info, et désolé alors pour la fausse piste.

    Quand tu auras trouvé une solution je veux bien voir comment tu as fais. Bonne chance en tout cas !

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Je persiste sur la piste ftp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    USER='pseudo'
    MDP='xxxxxxx'
     
    SERVEUR_FTP='serveur.com'
    FICHIER='/web/test.php'
     
    # connection ftp
    ftp -i -v -n $SERVEUR_FTP > sortie.tmp <<FTP
    user $USER $MDP
    ls $FICHIER
    bye
    FTP
     
    # test d'existence du fichier
    if grep -qi "^450.*$FICHIER.*no such file" sortie.tmp
    then
        echo "Le fichier $FICHIER n'existe pas"
        EXIT_CODE=1
    else
        echo "Le fichier $FICHIER existe"
        EXIT_CODE=0
    fi
     
    # nettoyage fichiers temoraires et sortie
    rm -f sortie.tmp
    exit $EXIT_CODE
    Et si tu veux utiliser ce script en ligne de commande avec le serveur et le nom de fichier comme argument, tu pourrais faire quelque-chose comme:

    remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SERVEUR_FTP='serveur.com'
    FICHIER='/web/test.php'
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    # parse de l'argument
    SERVEUR_FTP=$(echo $1 | cut -d : -f1)
    FICHIER=$(echo $1 | cut -d : -f2)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ test_fichier serveur.com:/web/test.php

  13. #13
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut
    merci ripat,

    ça à l'air de marcher, je fais quelque petit tests et je vous met au courant.

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

Discussions similaires

  1. unittest : lancer des test sur plusieurs fichiers
    Par rambc dans le forum Général Python
    Réponses: 8
    Dernier message: 30/10/2010, 11h25
  2. Connexion Excel et test sur un fichier déjà ouvert
    Par sebyo dans le forum Bases de données
    Réponses: 5
    Dernier message: 12/05/2009, 15h39
  3. Test sur un fichier image
    Par reventlov dans le forum Débuter
    Réponses: 1
    Dernier message: 06/10/2008, 22h39
  4. Tests sur des fichiers
    Par cyrilskof dans le forum Langage
    Réponses: 4
    Dernier message: 03/09/2008, 20h55
  5. Test sur les fichiers
    Par Overflow64 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 15/11/2005, 15h56

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