MacFTPTools for Mac OS X
Cet outil permet de synchroniser un dossier local vers un site FTP distant.
Les fichiers/dossiers indiqués en ligne de commande sont synchronisés avec ceux éventuellement présent sur le site FTP.
Un fichier ne sera téléchargé que s'il est plus récent que celui présent sur le site FTP ou si sa taille diffère.
Emplois typiques
Pour synchroniser le fichier "input.txt" avec celui éventuellement présent dans le dossier "titi/tutu" du site ftp.domain.net
L'option -q ("quiet") permet d'éliminer toute sortie sur le terminal.
Dans cet exemple, on supposera que l'utilisateur "user_name" a un compte avec le mot de passe "user_password" sur le serveur "ftp.domain.net".
$ /usr/local/bin/fput -u ftp://user_name:user_password@ftp.domain.net -C titi/tutu -q input.txt |
L'option -v ("verbose") permet d'avoir plus d'information sur la synchronisation du fichier "input.txt". Comme nous venons de le mettre à jour précedemment, fput a déterminé que le fichier présent sur le site FTP avait une date plus récente que celui présent localement et était de même taille. Le fichier n'est donc pas mis à jour.
$ /usr/local/bin/fput -u ftp://user_name:user_password@ftp.domain.net -C titi/tutu -v input.txt fput: connecting to FTP server ftp.domain.net... Serveur de mise a jour des pages perso de domain.net version [Feb 7 2005 13:55:51] fput: logging in as user user_name fput: not updating file input.txt fput: disconnecting |
L'option -d ("debug") permet de suivre l'échange avec le serveur FTP.
$ /usr/local/bin/fput -u ftp://user_name:user_password@ftp.domain.net -C titi/tutu -d -v input2.txt fput: connecting to FTP server ftp.domain.net... <<< 220 Serveur de mise a jour des pages perso de domain.net version [Feb 7 2005 13:55:51] fput: logging in as user user_name >>> USER user_name <<< 331 Password required for user_name. >>> PASS user_password <<< 230 User user_name logged in. >>> FEAT <<< 500 'FEAT': command unrecognized. >>> SYST <<< 215 UNIX Type: L8 >>> PWD <<< 257 "/" is current directory. >>> TYPE I <<< 200 Type set to I >>> CWD titi/tutu <<< 250 CWD command successful. >>> PWD <<< 257 "/titi/tutu" is current directory. >>> PASV <<< 227 Entering Passive Mode (212,27,63,3,203,166). >>> LIST -la <<< 150 Opening ASCII mode data connection for file list <<< drwx------ 5 web site 248 Nov 6 15:06 . <<< drwx------ 3 web site 72 Oct 21 21:10 .. <<< -rw-r--r-- 1 web site 53 Nov 9 21:38 input.txt <<< 226-Transfer complete. <<< 226 Quotas: utilisation de 105 Mo sur les 1024 Mo fput: uploading: input2.txt => input2.txt... >>> PASV <<< 227 Entering Passive Mode. >>> STOR input2.txt <<< 150 Opening BINARY mode data connection for input2.txt <<< 226 Transfer complete. fput: disconnecting >>> QUIT <<< 221 Goodbye. |
Il est bien entendu possible d'utiliser les caractères spéciaux `*', `?'. Par exemple, on peut synchroniser ainsi tous les fichier HTML (d'extension .html).
$ /usr/local/bin/fput -u ftp://user_name:user_password@ftp.domain.net -C titi/tutu -v *.html |
On peut aussi synchroniser des dossiers et utiliser plus d'un nom de fichier à la fois. Dans l'exemple suivant, on synchronise tous les fichiers HTML et JPEG du dossier courant et les dossiers "dossier1" et "dossiers2" de manière récursive.
$ /usr/local/bin/fput -u ftp://user_name:user_password@ftp.domain.net -C titi/tutu -v *.html *.jpeg dossier1 dossier2 |
Usage: fput [options] file ... Options: [-dNpqsvV] [-u urlftp] [-C dir] [-I urlfile] [-m max_connections] [-t timeout] [-T num_retries] [-i cache_interval] [-M max_cache_size] |
Les explications sur les options de fput seront bientot en ligne
© Philippe Laval, 2003-2006