Connexion ftp .netrc

Bonjour,
J'ai créé un schellscript qui permet de se connecter à un site FTP et qui utilise donc le fichier .netrc (sous redhat 7)
est-ce qu'il est possible d'utiliser un autre fichier du type .netrc pour executer mes commandes FTP.

par exemple:
mon script
...
ftp adressedusite qui utilise le fichier .netrc pour faire des commandes
....
ftp adressedusite qui utilise un autre fichier pour faire des autres commandes
...

2 réponses

  1. Contributeur
    Bonjour Babou, Phab,

    Sauf erreur, la syntaxe de .netrc permet de mettre en place des paramètres de connexion par machine. Voilà un extrait de la page de "man ftp" :

    machine name
    Identify a remote machine name. The auto-login process
    searches the .netrc file for a machine token that matches the
    remote machine specified on the ftp command line or as an open
    command argument. Once a match is made, the subsequent .netrc
    tokens are processed, stopping when the end of file is reached
    or another machine or a default token is encountered.


    Ceci dit, puisque tu inities ta connexion (et pilotes la session) ftp avec un script shell, tu pourrais aussi te passer d'un fichier .netrc et organiser ta session ftp comme celà (retire ou renomme ton .netrc pour effectuer les tests), par exemple :
    #!/bin/sh
    ftp -n $Server <<End-Of-Session
    user $Username $Password
    binary
    bell
    lcd $LDirectory
    cd $DDirectory
    put mystuff.tgz
    bye
    End-Of-Session
    

    Pour changer les paramètres de connexion, il te suffit de redéfinir les variables.

    Bien sûr, il faut que tu protèges correctement ton script contre les regards indiscrets, avec les permissions appropriées, car il comportera le login et le mot de passe... mais c'est une précaution que tu dois prendre aussi avec .netrc de toutes façons.

    Dal
    4
    1. tu crée plusieurs .netrc
      .netrcdefault, .netrcsite1, .netrcsite2

      apres :
      #utilse le netrc par defaut
      ftp adressedusite qui utilise le fichier .netrc pour faire des commandes

      #on change les params de connexion
      mv /mon_rep/.netrcsite1 /mon_rep/.netrc

      #on se connecte au site 1
      ftp adressedusite qui utilise un autre fichier pour faire des autres commandes

      #on remet le netrc par defaut
      mv /mon_rep/.netrcdefaut /mon_rep/.netrc

      et ça devrait rouler (je m'en sers de cette façon)
      0