Question : Je voudrais exécuter ftp à partir d'un script shell. Je voudrais également fournir le nom d'utilisateur et le mot de passe requis pour le téléchargement du fichier FTP dans le script shell lui-même. Pouvez-vous m'expliquer comment effectuer ce bain ftp à partir d'un script shell ?
Réponse : Pour télécharger/uploader des fichiers à l'aide de ftp en mode batch, vous pouvez soit utiliser le script FTP à l'aide du document HERE à partir de la ligne de commande, soit appeler FTP à partir d'un script shell, comme expliqué ci-dessous.
Script FTP à l'aide du document HERE
$ ftp -in URL << SCRIPTEND user USERNAME PASSWORD binary cd PATH mget PATH SCRIPTEND
Dans le script ftp ci-dessus :
- ftp :commande ftp
- -i :désactiver les invites interactives
- -n :désactiver la connexion automatique
- utilisateur USERNAME PASSWORD :connexion à l'aide du nom d'utilisateur et du mot de passe fournis
- binary :définit le mode binaire pour le transfert de fichiers binaires
- cd PATH :changer de répertoire sur la machine distante
- mget PATH :récupère le fichier spécifié
- SCRIPTEND :la balise représente ICI le début et la fin du document.
- Les documents HERE sont utilisés pour fournir des entrées aux commandes, reportez-vous au document Here pour en savoir plus.
Script FTP à l'aide de Shell Script
Voici un exemple de script shell qui télécharge un fichier tar à partir du serveur FTP.
$ cat download.sh ftp -in mirrors.issp.co.th << SCRIPTEND user anonymous [email protected] binary cd cpan/authors/id/P/PM/PMQS/ mget Compress-Raw-Bzip2-2.027.tar.gz SCRIPTEND
Exécutez ce script shell pour télécharger les fichiers depuis le ftp.
$ sh download.sh $ ls download.sh Compress-Raw-Bzip2-2.027.tar.gz
Pour plus de commandes FTP, reportez-vous à notre article précédent Guide du débutant FTP et SFTP avec 10 exemples