Aujourd’hui, nous allons voir comment initier une session FTP à partir du Terminal de Mac Os X. Ce n’est pas un tutoriel dédié Mac parce que je pense que les commandes UNIX ci-après doivent exister pour les autres sytèmes.

Pourquoi utiliser le terminal alors qu’il existe tellement de bons logiciels de FTP (Transmit et Cyberduck par exemple sous Mac) ? Parce que ça peut être plus rapide pour faire une petite modification sur un fichier si vous vous trouvez sur une autre machine que la vôtre (plutôt que de télécharger les outils et de les paramétrer).

Pour rappel, le Terminal Mac se trouve par défaut dans Applications/Utilitaires/. Lancez-le et tapez la commande ftp (validez par Entrée). Le shell vous répond à la ligne suivante par ftp> et le curseur cligotant indique que le terminal attend votre saisie.

Et le dialogue va continuer comme ça pendant toute la session 😉 Je vous ai retranscrit ci-dessous toute la session. J’ai ajouté mes commentaires en italiques après le signe # sur certaines lignes.


iMac20:~ maison$ ftp
ftp> open artcompix.com # ouverture session
Connected to artcompix.com.
220 FTP Server ready.
Name (artcompix.com:maison): userftp # saisissez votre login ftp
331 Mot de passe requis pour userftp
Password: # votre mot de passe (attention car il est invisible)
230 User userftp logged in. # ok on est connecté
Remote system type is UNIX.
Using binary mode to transfer files. # le mode binaire de transfert peut être changé au besoin
ftp> lcd /Users/maison/Desktop/site-local # cd ne fonctionne pas en local, il faut utiliser lcd pour spécifier un dossier local
Local directory now: /Users/maison/Desktop/site-local # dossier de téléchargement des fichiers
ftp> ls # on liste les fichiers présents dans le répertoire distant
229 Entering Extended Passive Mode (|||1372|)
150 Ouverture connexion de données en mode ASCII pour file list
drwxr-xr-x   8 userftp userftp     4096 Oct 18  2009 .
drwxr-xr-x   8 userftp userftp     4096 Oct 18  2009 ..
drwxr-x---   3 userftp userftp     4096 Oct 18  2009 cgi-bin
drwxr-xr-x   2 userftp userftp     4096 Apr  3  2010 conf
drwxr-xr-x   2 userftp userftp     4096 Oct 18  2009 homes
drwxr-xr-x   2 userftp userftp     4096 Oct 18  2009 lib
drwxr-x---   2 userftp userftp     4096 Oct 18  2009 logs
drwxr-xr-x   9 userftp userftp     4096 Mar  9 07:31 public_html
226 Téléchargement terminé
ftp> cd public_html # on change de répertoire
250 Commande CWD exécutée avec succès
ftp> ls # on liste les fichiers présents dans le répertoire courant
229 Entering Extended Passive Mode (|||2840|)
150 Ouverture connexion de données en mode ASCII pour file list
drwxr-xr-x   9 userftp userftp     4096 Mar  9 07:31 .
drwxr-xr-x   8 userftp userftp     4096 Oct 18  2009 ..
-rw-r--r--   1 userftp userftp      397 Mar  8 12:56 index.php
drwxr-xr-x   2 userftp userftp     4096 Jan 12 10:14 sounds
drwxr-xr-x   2 userftp userftp     4096 Jan 24 09:38 videos
226 Téléchargement terminé
ftp> get index.php # download
local: index.php remote: index.php
229 Entering Extended Passive Mode (|||1951|)
150 Opening BINARY mode data connection for index.php (3191 bytes)
100% |***************************************************************************************************|  3191       1.17 MB/s    00:00 ETA
226 Téléchargement terminé
3191 bytes received in 00:00 (98.00 KB/s)
ftp> !ls # les commandes locales commencent toutes par un ! sauf lcd
index.php # un seul fichier dans notre répertoire local
ftp> put index.php # après avoir édité ce fichier avec vi par exemple, on le renvoie
local: index.php remote: index.php
229 Entering Extended Passive Mode (|||1779|)
150 Ouverture connexion de données en mode BINARY pour index.php
100% |***************************************************************************************************|  3191      23.77 MB/s    00:00 ETA
226 Téléchargement terminé
3191 bytes sent in 00:00 (34.42 KB/s)
ftp> exit
221 Au revoir.
iMac20:~ maison$

Et voilà. C’est assez simple. Il y a bien sûr d’autres commandes disponibles en ligne. Il y a aussi des options pour presque chaque commande. Comme je l’ai dit dans les commentaires, vous pouvez éditer votre fichier sans quitter le terminal en utilisant un éditeur existant : vim.

La commande pour lancer l’éditeur est la suivante vi index.php (:help pour avoir la liste de toutes les commandes disponibles).

Si vous avez des questions, des remarques, des suggestions, les commentaires sont là.

Jacques

4 réponses

  1. Bonjour,

    Je dois faire une session FTP pour que des medecins y deposent des fichiers (images IRM). Je ne comprends pas bien qu’est ce que userftp : il faut deja avoir un login ftp ou bien c’est justement son initialisation?

    Merci,

    Helene

Répondre à Christophe Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.