SFTP Commands Reference
Antisèche complète des commandes SFTP pour le transfert de fichiers sur SSH.
27 commandes
sftpConnexionConnect to SFTP server
Syntaxe:
sftp [user@]host[:path]Exemple:
sftp user@example.comsftp -PConnexionConnect on a specific port
Syntaxe:
sftp -P <port> user@hostExemple:
sftp -P 2222 user@example.comsftp -iConnexionConnect using identity/key file
Syntaxe:
sftp -i <keyfile> user@hostExemple:
sftp -i ~/.ssh/id_rsa user@example.comexit / quit / byeConnexionClose the SFTP connection
Syntaxe:
exitExemple:
exitlsNavigationList remote directory contents
Syntaxe:
ls [-l] [path]Exemple:
ls -l /home/userllsNavigationList local directory contents
Syntaxe:
lls [path]Exemple:
lls ~/DownloadspwdNavigationPrint remote working directory
Syntaxe:
pwdExemple:
pwdlpwdNavigationPrint local working directory
Syntaxe:
lpwdExemple:
lpwdcdNavigationChange remote directory
Syntaxe:
cd <path>Exemple:
cd /var/www/htmllcdNavigationChange local directory
Syntaxe:
lcd <path>Exemple:
lcd ~/projectsgetTransfertDownload file from remote to local
Syntaxe:
get <remote> [local]Exemple:
get backup.tar.gzget -rTransfertDownload directory recursively
Syntaxe:
get -r <dir> [local]Exemple:
get -r /remote/dir ./localputTransfertUpload file from local to remote
Syntaxe:
put <local> [remote]Exemple:
put index.html /var/www/put -rTransfertUpload directory recursively
Syntaxe:
put -r <dir> [remote]Exemple:
put -r ./dist /var/www/mgetTransfertDownload multiple files matching pattern
Syntaxe:
mget <pattern>Exemple:
mget *.logmputTransfertUpload multiple files matching pattern
Syntaxe:
mput <pattern>Exemple:
mput *.jpgregetTransfertResume an interrupted download
Syntaxe:
reget <remote> <local>Exemple:
reget bigfile.zip bigfile.ziprmGestionRemove remote file
Syntaxe:
rm <path>Exemple:
rm /tmp/old.logrmdirGestionRemove remote directory
Syntaxe:
rmdir <path>Exemple:
rmdir /tmp/olddirmkdirGestionCreate remote directory
Syntaxe:
mkdir <path>Exemple:
mkdir /var/www/uploadsrenameGestionRename or move remote file
Syntaxe:
rename <old> <new>Exemple:
rename old.txt new.txtchmodGestionChange remote file permissions
Syntaxe:
chmod <mode> <path>Exemple:
chmod 644 index.htmlchownGestionChange remote file owner
Syntaxe:
chown <owner> <path>Exemple:
chown www-data file.phpdfInfoShow remote disk usage
Syntaxe:
df [-h]Exemple:
df -hstatInfoShow file attributes
Syntaxe:
stat <path>Exemple:
stat /etc/passwdversionInfoShow SFTP protocol version
Syntaxe:
versionExemple:
versionhelpInfoShow all available commands
Syntaxe:
helpExemple:
helpÀ propos de cet outil
SFTP (Protocole de transfert de fichiers SSH) est une méthode sécurisée pour transférer des fichiers entre ordinateurs via une connexion SSH chiffrée. Contrairement aux protocoles plus anciens comme FTP, SFTP offre un chiffrement de bout en bout, protégeant vos données contre l'interception et garantissant que les identifiants d'authentification restent confidentiels. Ce guide de référence compile les commandes SFTP les plus couramment utilisées en un seul endroit, facilitant l'exécution des opérations de fichiers par les développeurs, administrateurs système et ingénieurs DevOps sans mémoriser la syntaxe.
En utilisant SFTP depuis la ligne de commande, vous pouvez vous connecter à des serveurs distants, parcourir les structures de répertoires, télécharger et charger des fichiers, et gérer les permissions—le tout via un tunnel sécurisé. Que vous déployiez des applications, fassiez des sauvegardes de configurations ou transfériez des journaux, les commandes SFTP comme get, put, ls et cd sont des outils fondamentaux de votre flux de travail. Le format de feuille de triche vous permet de rechercher rapidement la syntaxe des commandes et les options sans basculer entre plusieurs pages de documentation.
Cet outil est plus précieux pour quiconque travaille avec des serveurs distants dans des environnements de production où la sécurité et la fiabilité sont essentielles. Les équipes DevOps, les administrateurs système et les développeurs bénéficient d'avoir une référence rapide pour la syntaxe SFTP, en particulier lors du dépannage des problèmes de transfert de fichiers ou de l'intégration de nouveaux membres d'équipe qui doivent apprendre les pratiques sécurisées de gestion des fichiers.
Questions Fréquentes
Implémentation du Code
import subprocess
import os
def sftp_connect(host: str, user: str, port: int = 22, key_file: str = None) -> list[str]:
"""Build an sftp command to connect to a remote host."""
cmd = ["sftp"]
if port != 22:
cmd.extend(["-P", str(port)])
if key_file:
cmd.extend(["-i", key_file])
cmd.append(f"{user}@{host}")
return cmd
def sftp_batch_commands(local_dir: str, remote_dir: str, files: list[str]) -> str:
"""Generate SFTP batch file commands for uploading multiple files."""
lines = [f"cd {remote_dir}", f"lcd {local_dir}"]
for f in files:
lines.append(f"put {f}")
lines.append("bye")
return "\n".join(lines)
# Example: create a batch file for SFTP upload
batch = sftp_batch_commands("/local/uploads", "/remote/data", ["a.csv", "b.csv"])
print("SFTP batch commands:")
print(batch)
# Write to batch file and run
with open("/tmp/sftp_batch.txt", "w") as bfile:
bfile.write(batch)
cmd = sftp_connect("example.com", "myuser") + ["-b", "/tmp/sftp_batch.txt"]
print("\nCommand:", " ".join(cmd))
# subprocess.run(cmd) # Uncomment to actually runComments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.