Guides

Utiliser le FTP en ligne de commande sous Windows

Chaque Windows embarque un client FTP en ligne de commande. Une session ftp.exe complète, de la connexion au script – et le point où l'outil cesse d'être le bon choix.

· 6 min de lecture · Vlad Fedoniuk

Chaque PC Windows est livré avec un client FTP en ligne de commande. Il est là depuis les années 1990 : ouvrez l'Invite de commandes ou PowerShell, tapez ftp, et vous y êtes. Aucune installation, aucun droit d'administrateur, rien à télécharger – c'est exactement pour cela qu'il reste le moyen le plus rapide de récupérer un fichier sur un serveur FTP depuis une machine que vous ne contrôlez pas, ou de scripter un transfert rapide sur une machine de build.

Ce guide parcourt une session ftp.exe complète – connexion, transferts, scripts – et dit honnêtement où l'outil cesse d'être le bon choix. Si vous voulez seulement la liste complète des commandes, la référence des commandes FTP couvre chaque commande client et protocole, avec syntaxe et exemples.

Le FTP utilise deux connexions non chiffrées, un canal de contrôle sur le port 21 et un canal de données sur une plage de ports ; le FTPS ajoute TLS aux deux mais en exige toujours deux ; le SFTP achemine tout sur une seule connexion chiffrée, sur le port 22
Le ftp.exe de Windows ne parle que la ligne du haut – il ne connaît ni FTPS ni SFTP.

Étape 1 : se connecter au serveur

Démarrez une session en passant directement le nom d'hôte, ou lancez d'abord le client et utilisez open:

C:\> ftp ftp.example.com ftp> open ftp.example.com

Le serveur répond par une bannière et demande des identifiants. Tapez le nom d'utilisateur, appuyez sur Entrée, puis le mot de passe (il ne s'affichera pas). Sur les serveurs qui l'autorisent, le nom d'utilisateur anonymous avec n'importe quelle adresse e-mail comme mot de passe vous donne un accès en lecture aux fichiers publics.

Étape 2 : regarder autour de soi

Quatre commandes couvrent la navigation. dir liste le répertoire distant courant, cd en change, pwd indique où vous êtes, et lcd – celle que tout le monde oublie – change le dossier local où atterrissent les téléchargements et d'où partent les envois :

ftp> dir ftp> cd /public_html ftp> lcd C:\Users\vlad\Downloads Local directory now C:\Users\vlad\Downloads.

Étape 3 : passer en mode binaire

Avant de transférer quoi que ce soit qui ne soit pas du texte brut, tapez binary. Dans le mode ASCII par défaut, ftp.exe réécrit les fins de ligne pendant le transfert – inoffensif pour un .txt, destructeur pour des zips, des images, des exécutables et tout autre contenu binaire. Cette seule commande évite le classique « le fichier s'est téléchargé mais ne s'ouvre pas » :

ftp> binary 200 Type set to I.

Étape 4 : télécharger et envoyer

get télécharge un fichier, put en envoie un. Leurs variantes multi-fichiers mget et mput acceptent les jokers, et prompt désactive la confirmation « o/n » fichier par fichier pour que les jokers s'exécutent sans surveillance. hash affiche un # par bloc, afin que les longs transferts montrent leur progression :

ftp> hash ftp> get backup.zip ftp> put report.pdf ftp> prompt Interactive mode Off. ftp> mget *.log

Étape 5 : terminer la session

bye (ou quit) ferme la connexion et quitte. Une session complète ressemble à ceci :

C:\> ftp ftp.example.com User: alice Password: ******** ftp> binary ftp> cd /backups ftp> lcd C:\Backups ftp> get site-backup.zip 226 Transfer complete. ftp> bye

Scripter des transferts avec -s:

ftp.exe peut exécuter un script au lieu d'une session interactive. Placez les commandes dans un fichier texte – les deux premières lignes sont le nom d'utilisateur et le mot de passe – et passez-le avec -s:. L'option -n supprime l'invite de connexion automatique lorsque vous scriptez vous-même la connexion, avec user:

# upload.txt alice secretpassword binary cd /public_html lcd C:\Site\dist prompt mput *.html bye C:\> ftp -s:upload.txt ftp.example.com

Cela fonctionne avec le Planificateur de tâches pour des travaux récurrents – mais remarquez ce que vous venez de faire : stocker un mot de passe dans un fichier texte en clair, pour un protocole qui l'envoie en plus en clair sur le réseau. Acceptable sur un réseau local avec un compte jetable ; pas acceptable pour quoi que ce soit d'important.

Là où ftp.exe cesse d'être le bon outil

Le client intégré est réellement utile, et c'est aussi une conception vieille de trente ans, avec des limites dures qu'il vaut mieux connaître avant de se battre contre elles :

  • Aucun mode passif. ftp.exe ne gère que les transferts en mode actif, où le serveur ouvre une connexion en retour vers votre PC. Les routeurs et pare-feu modernes bloquent cela, ce qui explique que des sessions se connectent parfaitement puis restent bloquées indéfiniment sur dir ou get. Aucune option ne corrige cela – le mode passif n'est tout simplement pas implémenté.
  • Aucun chiffrement, d'aucune sorte. Ni SFTP ni FTPS ne sont pris en charge. Identifiants et contenus de fichiers circulent en clair.
  • Pas de reprise, pas de récursion. Un téléchargement de 2 Go interrompu repart de zéro, et il n'existe aucun moyen de transférer une arborescence en une seule commande.

Pour le SFTP, Windows 10 et 11 incluent la commande OpenSSH sftp, qui est le choix moderne et scriptable – son jeu de commandes est proche mais pas identique, et la référence des commandes SFTP le documente intégralement.

Quand une interface graphique est simplement plus rapide

Le FTP en ligne de commande justifie sa place pour des récupérations ponctuelles et des scripts simples. Dès l'instant où vous jonglez avec des répertoires des deux côtés, relancez des transferts échoués ou déplacez des arborescences entières, un client graphique gagne en temps. FTPie est un client FTP gratuit pour Windows avec un mode passif qui fonctionne, plus SFTP, FTPS, WebDAV et plus de 10 services cloud dans une seule fenêtre – le glisser-déposer remplace mput, les transferts reprennent tout seuls, et l'offre gratuite couvre jusqu'à 3 connexions serveur.

Et si la partie script vous a plu, FTPie Pro inclut une véritable ligne de commande avec prise en charge du SFTP, du FTPS et du cloud ainsi qu'un constructeur visuel de commandes, plus des transferts planifiés qui remplacent entièrement la valse script + Planificateur de tâches – sans mots de passe dans des fichiers texte.

Le constructeur de commandes CLI de FTPie assemblant une commande de transfert avec une liste déroulante de verbes, des champs d'arguments et un aperçu en direct

Gardez la référence des commandes FTP en signet pour la liste complète – les commandes client et les commandes brutes du protocole auxquelles elles correspondent.

Commencez votre essai gratuit de 14 jours

Téléchargez FTPie et lancez votre essai gratuit de 14 jours. Profitez de vos serveurs et de vos clouds au même endroit, puis continuez avec la version gratuite.

Télécharger l’essai gratuit
Vérifié CASA et analysé par VirusTotal
Essai de 14 jours · Version gratuite incluse
Windows 10 & 11
Vlad Fedoniuk

Vlad Fedoniuk

Je suis le fondateur et le développeur de FTPie, attaché à créer des logiciels qui simplifient et enrichissent la vie numérique. Retrouvez mon site personnel sur fedoni.uk , ou retrouvez-moi sur X (formerly Twitter) , LinkedIn , ou par e-mail à vlad@ftpie.com