Connexion ftp .netrc

babou -  
[Dal] Messages postés 6373 Statut Contributeur -
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

[Dal] Messages postés 6373 Statut Contributeur 1 106
 
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
phab
 
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