Script envoi ftp et test du poid de fichier

vitcz Messages postés 46 Statut Membre -  
vitcz Messages postés 46 Statut Membre -
Bonjour à tous,

j'essais de passer un envoi de fichier dans un script ftp, mais je me fais jetter proprement

Mon script :

#debut du scrip
ftp -n <<EOF
open $hostname
$username $password
ascii
cd REP
mkdir TEST
put archive.tar.gz
EOF
echo "Fin du transfert"
#fin du script


Mesage d'errreur :

'AUTH GSSAPI': command not understood
'AUTH KERBEROS_V4': command not understood
KERBEROS_V4 rejected as an authentication type
?Invalid command
Please login with USER and PASS.
Please login with USER and PASS.
Please login with USER and PASS.
Please login with USER and PASS.
Passive mode refused. Turning off passive mode.
Please login with USER and PASS.
ftp: bind: Address already in use
Fin du transfert

J'aimerais que mon script fasse le test du poid du fichier et ne réalise l'envoi ssi il est inférieur à 1024 MO, merci pour vos lumières.
A voir également:

9 réponses

dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
j'essayerais de mettre les commandes de login dans .netrc

cat << ZZ > ~/.netrc
machine $hostname
login $username
password $password
ZZ

et bin pas ascii pour envoyer du binaire
ftp -n <<EOF
bin
cd REP
mkdir TEST
put archive.tar.gz
quit
EOF
0
vitcz Messages postés 46 Statut Membre 3
 
merci pour ta réponse :

Mais de mon coté, je n'ai plus de message d'erreur, mais pas de résultat non plus.

plusieurs choses : Je peux mettre les deux paragraphes dans le meme script ?
Je ne vois pas d'appel du fichier .netrc apres sa création. Doit il etre sur le serveur distant ?

Le fait que j'ai un symbol "$" dans mon mot de passe peut il poser un probleme ? c'est pour cela que je le renseigne en variable?
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
le .netrc doit être dans le répertoire home de l'utilisateur qui exécute ftp
oui, tout peut être dans le même script
le $ veut dire que $user et $password sont des variables d'environnement du shell
0
vitcz Messages postés 46 Statut Membre 3
 
merci dubcek pour les précision, Pour ce qui est du dolars, je voulais dire que mon mot de passe en contient un j'esperais que cela negene pas le scipt.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
c'est probable que ça gène, parce que le shell va interpréter le $, essayer de mettre le mdp directement dans le .netrc pour tester
0
vitcz Messages postés 46 Statut Membre 3
 
alors, j'ai placé mon fichier .netrc dans /root, il est correctment renseigné : j'arrive à me connecté manuellement, mais le script ne fonctionne pas... Une idée ?


ftp -n OOO.OOO.O.O <<EOF
bin
cd REP
mkdir TEST
send archive.tar.gz
quit
EOF
0
vitcz Messages postés 46 Statut Membre 3
 
Bonjour,

j'ai bien mon fichier .netrc dans /root, j'arrive a me connecter manuellement depuis le meme serveur et ce sans avoir a entrer log et mot de passe : donc le fichier .netrc fonctionne...

Mais le script ne focntionne pas, je vous passe le nombre de variantes que j'ai essayé, de toute fçon ça dépasse le nombre de caractères autorisés dans un post...

si qq'un a une idée ...

merci
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
enlever le -n
-n Restrains ftp from attempting ``auto-login'' upon initial con-
nection. If auto-login is enabled, ftp will check the .netrc
(see below) file in the user's home directory for an entry
describing an account on the remote machine.
0
vitcz Messages postés 46 Statut Membre 3
 
Ouiiii exdactment, le 1001 eme essai était le bon, mais je comprend mieux avec ton explication.

donc

ftp 00.00.00.00 <<EOF
bin
cd REP
send $filename.tar.gz
quit
bye
EOF

merci ca marche impec et on peut passer des variables
0