Forum Programmation.shell Tester un connexion FTP

Posté par  .
Étiquettes : aucune
0
10
fév.
2006
Bonjour,

Je reviens à nouveau vers vous car dans mes scripts fils ( toto.sh), je veux ouvrir une connexion FTP si je n'en ai pas déjà une, et s'il y en a déjà une, ben je ne fais rien.

Proposition qui ne fonctionne pas :(
#!/bin/ksh

GO=
VAR=`echo $GO | grep "Connected"`

if ! test -z GO -o [ "X$VAR" = "X" ]
then
GO=`ftp -nv <<
xxx
open "IP"
user "user" "password"
`
fi

( mes 2 flèches ont été transformées en %lt)

J'avais aussi pensé à la commande status de ftp, mais pour ça il faut être connecté. ;)

Merci de votre aide car je galère.
  • # test connexion active

    Posté par  . Évalué à 2.

    Heuuuu, le but c'est de tester la présence d'une connexion active, c'est ça ?
    Tu peux chercher la présence d'une socket ouverte vers ton serveur (par exemple), avec :
    if netstat -nt | grep -qs 'ip_serveur:21.*ESTABLISHED'
    then
        echo je suis connecté
    else
        echo je dois me connecter
    fi
    • [^] # Re: test connexion active

      Posté par  . Évalué à 1.

      Ta solution aurait pu marcher si je n'avais qu'une seule connexion FTP sur cette machine, mais j'en ai plusieurs! Donc comment la reconnaitrais-je parmi les autres?
      • [^] # Re: test connexion active

        Posté par  . Évalué à 1.

        Bein, heu, va falloir que tu détailles un peu, parce qu'avec ce que tu dis dans ton message initial :

        je veux ouvrir une connexion FTP si je n'en ai pas déjà une, et s'il y en a déjà une, ben je ne fais rien.

        j'ai du mal à suivre .... ^_^

        Tu as une boucle dans ton script ? Il lance des processus qui font la même chose que lui ? D'où viennent les autres sessions vers ce même serveur ftp ? ....

        Je manque d'éléments pour t'aider d'avantage.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.