J'ai besoin de télécharger un seul fichier sur un serveur FTP à partir d'Ubuntu. Cette opération doit être effectuée dans un script (en mode non interactif). Quelle est la bonne syntaxe pour ftp
?
J'essaye cela, en vain:
$ ftp -u ftp://user:[email protected] my-local-file.txt
ftp: Invalid URL `ftp://'
ftp
outil dans Ubuntu, mais on dirait qu’il s’étouffeftp://
. essayez de prendre ça peut-être?man ftp
à la ligne de commandeRéponses:
Voici une approche:
Vous pouvez également créer (ou modifier) le fichier ~ / .netrc dans le répertoire personnel de l'utilisateur qui exécutera la commande ftp, attribuez-lui la fonction perms (
chmod 0600 ~/.netrc
) appropriée et ajoutez les éléments suivants:Puis omettez les informations de connexion, comme dans:
Aussi, voici comment vous pourriez faire la même chose en utilisant curl:
la source
curl
ftp était supporté! C'est super pratique.curl
solution. Pourquoi même s'embêter avec l'autre?curl
solution est la meilleure et la plus facileJe peux recommander
ftp-upload
. C'est un petit outil soigné que vous pouvez installer sous Ubuntusudo apt-get install ftp-upload
.Exemple d'utilisation:
la source
man ftp-upload
. J'espère que ça t'as aidé.Vous devez corriger l'URL indiquée dans votre relevé. Vous avez reçu l'erreur parce que l'URL était incomplète - il manquait le nom de l'objet que vous téléchargez. Une fois que vous avez ajouté le nom de fichier après "exemple.com", comme indiqué ci-dessous, vous verrez que la commande unique fonctionne comme vous le souhaitez.
Essaye ça:
ftp -u ftp://user:[email protected]/my-local-file.txt my-local-file.txt
la source
Installez ncftp et utilisez l’ outil ncftpput qui s’y accompagne, à peu près de la syntaxe suivante:
Vous pouvez même vérifier si le statut de téléchargement est bon ou mauvais. Le client ftp normal peut également être utilisé avec expect.
la source
Tu peux aussi essayer
lftp
.Voici un exemple:
Référez-vous ici pour plus de détails
.
la source
Télécharger un fichier vers un emplacement distant via une ligne de commande
la source
J'utilise BusyBox
ftpput
pour faire ceci:Note:
busybox ftpget
fonctionne bien aussi.la source
Vous pouvez également utiliser la commande sftp ou ftp
sftp {user}@{IP}
Password:
put {path To File On Local Computer}
la source
J'ai amélioré la réponse de Marty comme ci-dessous (inclure le binaire):
[ftp_example_1.sh]
$ ftp_example_sh.sh fichier_dump
[ftp_example_2.sh]
$ ftp_example_2.sh 192.168.0.10 dump_file
la source
la source