J'ai écrit un script bash pour mettre à jour une page sur le site Web de mon entreprise. Voici ce que j'ai jusqu'à présent:bash + ftp: Le fichier est vide au téléchargement
#!/bin/bash
ruby final_07.rb
HOST=ftp.website.com
USER=username
PASSWD=password
ftp -n -v $HOST <<EOF
user $USER $PASSWD
delete warehouse.html.old
rename warehouse.html warehouse.html.old
put warehouse.html warehouse.html
EOF
Il exécute le script Ruby très bien. Il se connecte au FTP très bien. Il renomme même l'ancien fichier très bien. Cependant, quand il "télécharge", je viens d'obtenir un fichier nommé "warehouse.html" qui est 0 octets - il est totalement vide. J'ai vérifié, et le fichier source est bien. Quand je télécharge manuellement avec FileZilla, ça marche très bien aussi. Alors, qu'est-ce qui donne?
Voici le journal de ma fenêtre de terminal:
[email protected]:~/code/ruby/idealm_db_parser/final$ ./update_script_02.sh
Connected to www.website.com.
220 FTP Service
Remote system type is UNIX.
Using binary mode to transfer files.
331 Password required for user.
230 User user logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
250 DELE command successful
350 File or directory exists, ready for destination name.
250 Rename successful
local: warehouse.html remote: warehouse.html
200 PORT command successful
150 Opening BINARY mode data connection for warehouse.html
226 Transfer complete.
221
Merci à l'avance pour toute aide. Je cours Ubuntu 10.10, si cela aide.
Le fichier .old semble-t-il correct? Pouvez-vous afficher les autorisations de fichier ET les autorisations de répertoire sur la machine distante? Assurez-vous qu'ils sont OK. (Le fichier Zéro * est * bizarre ;-)! – shellter
Autorisations Vous pourriez être sur quelque chose. Je ne suis toujours pas familier avec la façon dont * nix gère les permissions, donc je ne serais pas surpris. Je serai au travail dans une heure ou deux - je vais le tester et vous le faire savoir. – eckza
Et sont d'envoyer et de recevoir des machines à la fois Ubuntu. Différents OS auront des clients Ftp différents avec des options et des traitements parfois radicalement différents. – shellter