SSH : Commandes sftp
Table des matières
Quand vous vous connectez à un serveur sftp, vous avez parfois besoin d'exécuter des commandes sftp.
Même si Filezilla permet de faire tout cela, il peut être utile de connaitre les commandes sftp.
Dans cet article, je résume les commandes pour les retrouver facilement.
Pour se connecter au serveur sftp :
Par défaut le port 22 est utilisé, ici je vous montre comment utiliser un autre port (exemple avec 2222)
Voici un tableau récapitulatif des commandes qu'on peut utiliser en sftp :
Typiquement, si on a besoin d'envoyer un fichier par un script, voici un exemple.
J'envoie sur le sftp le fichier fic.txt dans le dossier data distant.
On peut bien sûr faire un script et passer en argument le fichier à envoyer si on le souhaite.
Si on ne dispose pas de clé publique, et qu'on veut exécuter le même script que ci-dessus avec un mot de passe (passé en clair n'est pas conseillé, mais on peut le passer en argument au script si on veut), on utilisera :
Introduction
Quand vous vous connectez à un serveur sftp, vous avez parfois besoin d'exécuter des commandes sftp.
Même si Filezilla permet de faire tout cela, il peut être utile de connaitre les commandes sftp.
Dans cet article, je résume les commandes pour les retrouver facilement.
Commandes sftp
Pour se connecter au serveur sftp :
Code BASH :
sftp -P 2222 user@machine
Par défaut le port 22 est utilisé, ici je vous montre comment utiliser un autre port (exemple avec 2222)
Voici un tableau récapitulatif des commandes qu'on peut utiliser en sftp :
Commande | Action |
---|---|
pwd | Affiche le dossier courant distant |
lpwd | Affiche le dossier courant local |
ls | Liste les dossiers et fichiers du dossier courant distant |
lls | Liste les dossiers et fichiers du dossier courant local |
cd | Change de répertoire distant |
lcd | Change de répertoire local |
mkdir | Créé un dossier dans le répertoire distant |
lmkdir | Créé un dossier dans le répertoire local |
get | Télécharge des fichiers depuis le serveur vers le client (-r pour un répertoire) |
put | Téléverse des fichiers depuis le client vers le serveur (-r pour un répertoire) |
rm | Supprime un fichier |
rmdir | Supprime un dossier |
help | Affiche l'aide |
exit | Quitte l'invite SFTP |
Envoyer des fichiers par script
Avec une clé publique sans mot de passe
Typiquement, si on a besoin d'envoyer un fichier par un script, voici un exemple.
J'envoie sur le sftp le fichier fic.txt dans le dossier data distant.
Code BASH :
#! /bin/bash sftp adrien@192.168.21.251 << FINDESCRIPT cd data put fic.txt exit FINDESCRIPT
On peut bien sûr faire un script et passer en argument le fichier à envoyer si on le souhaite.
Avec un mot de passe
Si on ne dispose pas de clé publique, et qu'on veut exécuter le même script que ci-dessus avec un mot de passe (passé en clair n'est pas conseillé, mais on peut le passer en argument au script si on veut), on utilisera :
Code BASH :
#! /bin/bash sshpass -p supermotdepasse sftp adrien@192.168.21.251 << FINDESCRIPT cd data put fic.txt exit FINDESCRIPT