Commande ftp

Fonction

Cette commande transfère des fichiers entre un hôte local et un hôte distant.

Syntaxe

ftp [ -d] [ -g ] [ -i ] [ -n ] [ -v] [ -f ] [ -k domaine] [-q[-C]][ NomHôte [ Port ] ]

Description

La commande ftp utilise le protocole FTP (File Transfer Protocol) pour transférer des fichiers entre l'hôte local et un hôte distant ou entre deux hôtes distants.

Le protocole FTP permet de transférer des données entre deux hôtes basés sur des systèmes de fichiers différents. Bien que le protocole assure un degré élevé de souplesse lors du transfert des données, il ne tente pas de conserver les attributs de fichier (tels que le mode de protection ou la date/heure de modification d'un fichier) propres à un système de fichiers spécifique. En outre, le protocole FTP n'émet que peu d'hypothèses concernant la structure globale d'un système de fichiers ; il ne propose et ne gère pas de fonctions telles que la copie récursive de sous-répertoires.

Entrée de sous-commandes

A l'invite ftp>, vous pouvez entrer des sous-commandes destinées à exécuter des tâches telles que recenser les répertoires distants, changer de répertoire local et distant, transférer plusieurs fichiers dans le cadre d'une requête unique, créer et supprimer des répertoires et faire appel au shell local pour exécuter des commandes shell. Voir la section Sous-commandes pour obtenir une description de chaque sous-commande.

Si vous exécutez la commande ftp sans définir de paramètre NomHôte pour un hôte distant, elle affiche immédiatement l'invite ftp> et attend l'entrée d'une sous-commande ftp. Pour établir une connexion avec un hôte distant, exécutez la sous-commande open. La commande ftp se connecte à l'hôte distant, puis elle vous invite à entrer le nom de connexion et le mot de passe avant d'afficher à nouveau l'invite ftp>. La commande ftp échoue si vous ne spécifiez pas le mot de passe associé au nom de connexion sur l'hôte distant.

L'interpréteur de commandes ftp, qui traite toutes les sous-commandes entrées à l'invite ftp>, propose des fonctions non prises en charge par la plupart des programmes de transfert de fichiers, tels que :

Ces fonctions vous permettent de simplifier l'exécution de tâches répétitives et d'utiliser la commande ftp en mode sans opérateur.

L'interpréteur de commandes traite les paramètres de nom de fichier en fonction des règles suivantes :

Pour arrêter une session ftp en mode interactif, utilisez la sous-commande quit ou bye ou la séquence de touches Fin de fichier (Ctrl-D) à l'invite ftp>. Pour mettre fin à un transfert de fichier avant qu'il ne soit terminé, appuyez sur la séquence de touches d'interruption (Ctrl-C, par défaut). La commande stty permet de redéfinir cette séquence de touches.

En règle générale, la commande ftp arrête immédiatement les transferts en cours de l'hôte local à l'hôte distant. La commande ftp arrête la réception de transferts (de l'hôte distant à l'hôte local) en envoyant une instruction FTP ABOR au serveur FTP distant et en éliminant tous les paquets de fichiers transférés entrants jusqu'à ce que le serveur distant cesse de les envoyer. Si le serveur distant ne prend pas en charge l'instruction ABOR, la commande ftp n'affiche pas l'invite ftp> tant que le serveur distant n'a pas envoyé la totalité du fichier requis. En outre, il s'avère parfois nécessaire d'arrêter le processus ftp local si le serveur distant se comporte de manière inattendue.

Sécurité et connexion automatique

Si la méthode d'authentication en cours est réglée sur Standard :

La commande ftp sécurise également les connexions en envoyant des mots de passe à l'hôte distant et autorise les connexions automatiques, les transferts de fichier et les déconnexions.

Si vous exécutez la commande ftp et indiquez le nom d'un hôte distant (NomHôte), elle tente d'établir une connexion avec l'hôte indiqué. Si la commande ftp établit une connexion, elle recherche un fichier $HOME/.netrc local dans votre répertoire en cours ou votre répertoire personnel. Si le fichier existe, la commande ftp recherche dans celui-ci une entrée qui initialise le processus de connexion et les définitions de macros de commandes associées à l'hôte distant. Si le fichier $HOME/.netrc ou l'entrée relative à la connexion automatique n'existe pas, la commande ftp invite l'utilisateur à entrer un nom d'utilisateur et un mot de passe. La commande affiche l'invite, que le paramètre NomHôte soit défini sur la ligne de commande ou non.

Remarque :
Le système de files d'attente ne prend pas en charge les noms d'hôte composés de caractères multioctet.

Si la commande ftp détecte une entrée $HOME/.netrc relative à la connexion automatique et associée à l'hôte indiqué, elle tente d'utiliser les informations correspondantes pour se connecter à l'hôte distant. La commande ftp charge également toute macro de commande définie dans l'entrée. Dans certains cas (par exemple, lorsque le mot de passe requis ne figure pas dans une entrée relative à la connexion automatique), la commande ftp invite l'utilisateur à entrer le mot de passe avant d'afficher l'invite ftp>.

Une fois la connexion automatique exécutée par la commande ftp, celle-ci exécute la macro init si elle est définie dans l'entrée de connexion automatique. Si la macro init n'existe pas ou qu'elle ne contient pas de sous-commande quit ou bye, la commande ftp affiche alors l'invite ftp> et attend l'entrée d'une sous-commande.

Remarque :
Le nom d'utilisateur distant spécifié à l'invite ou dans un fichier $HOME/.netrc doit exister et être associé à un mot de passe défini sur l'hôte distant. Dans le cas contraire, la commande ftp échoue.
Si la méthode d'authentification en cours est réglée sur Kerberos 5 :

La commande ftp utilise les extensions associées aux spécifications ftp définies dans le document de travail du groupe de travail IETF "draft-ietf-cat-ftpsec-09.txt". Les extensions de sécurité FTP seront mises en oeuvre par le biais du mécanisme de sécurité GSSAPI (Generic Security Service API). Le GSSAPI propose des services indépendants du mécanisme de sécurité et de communication sous-jacent. Ilest défini dans rfc 1508 et 1509.

La commande ftp utilise les commandes AUTH et ADAT pour authentifier le démon ftpd. Si les deux éléments prennent en charge l'authentication Kerberos, ils utilisent les données d'authentification DCE des utilisateurs locaux pour authentifier l'utilisateur sur le système distant. Si l'opération échoue et que l'authentification Standard est configurée sur les deux systèmes, le processus décrit ci-dessus est utilisé.

Le paramètre NomHôte définit le nom de la machine hôte vers laquelle les fichiers sont transférés. Le paramètre Port facultatif spécifie l'identificateur du port utilisé pour la transmission. (Le fichier /etc/services définit le port par défaut.)

Options

-C Permet à l'utilisateur de spécifier que le fichier sortant envoyé par le biais de la commande send_file doit être placé dans la mémoire cache NBC (Network Buffer Cache). Cette option ne peut pas être utilisée si vous ne spécifiez pas l'option -q. Elle ne s'applique qu'à l'envoi d'un fichier en mode binaire sans protection.
-d Envoie au démon syslogd des informations de débogage relatives aux opérations associées à la commande ftp. Si vous spécifiez l'option -d, vous devez modifier le fichier /etc/syslog.conf et ajouter l'une des entrées suivantes :

user.info NomFichier

OU

user.debug NomFichier

Remarque : Le niveau de débogage du démon syslogd comprend les messages d'information.

Si vous ne modifiez pas le fichier /etc/syslog.conf, aucun message n'est généré. Après avoir modifié le fichier /etc/syslog.conf, exécutez la commande refresh -s syslogd ou kill -1 IDPSyslogd pour avertir le démon syslogd des modifications effectuées dans son fichier de configuration. Pour plus d'informations sur les niveaux de débogage, voir le fichier /etc/syslog.conf. Consultez également la sous-commande debug.

-g Désactive l'expansion des métacaractères dans les noms de fichier. L'interprétation des métacaractères porte également le nom d'expansion (aussi appelé globbing) d'un nom de fichier (voir la sous-commande glob).
-i Désactive la génération d'invites interactives lors des transferts de fichiers multiples. Pour plus d'informations sur les invites dans le cadre des transferts de fichiers multiples, consultez les sous-commandes prompt , mget , mput et mdelete.
-n Interdit l'établissement d'une ouverture automatique de session pendant la connexion initiale. Si cette option n'est pas définie, la commande ftp recherche une entrée $HOME/.netrc qui décrit le processus de connexion et d'initialisation pris en charge par l'hôte distant. Voir la sous-commande user.
-q Permet à l'utilisateur de spécifier l'utilisation du sous-programme send_file pour envoyer le fichier via le réseau. Cette option ne s'applique qu'à l'envoi d'un fichier en mode binaire sans protection.
-v Affiche toutes les réponses du serveur distant et fournit des statistiques relatives aux transferts de données. Ce mode d'affichage est activé par défaut lorsque la commande ftp génère des données sur un terminal, tel qu'une console ou un écran.

Si la sortie standard n'est pas un terminal, la commande ftp désactive le mode prolixe, sauf si l'utilisateur a appelé l'option ftp en conjonction avec l'option -v ou qu'il a entré la sous-commande verbose.

-f Entraîne le réacheminement des données d'identification. Cette option n'est pas prise en compte si Kerberos 5 ne correspond pas à la méthode d'authentification en cours.
-k domaine Permet à l'utilisateur de définir le domaine du système distant s'il est différent de celui du système local. Dans ce cas de figure, un domaine est synomyne de cellule DCE. Cette option n'est pas prise en compte si Kerberos 5 ne correspond pas à la méthode d'authentification en cours.

Sous-commandes

Vous pouvez entrer les sous-commandes ftp suivantes à l'invite ftp>. Utilisez des guillemets (" ") pour définir des paramètres qui comprennent des caractères vides.

![Commande [Paramètres]] Appelle un shell interactif sur l'hôte local. Vous pouvez spécifier une commande facultative, associée à un ou plusieurs paramètres facultatifs, avec la commande du shell.
$Macro [Paramètres] Exécute la macro spécifiée, précédemment définie avec la sous-commande macdef. Les paramètres ne sont pas développés.
?[Sous-commande] Affiche un message d'aide relatif à la sous-commande. Si vous ne spécifiez pas de paramètre Sous-commande, la commande ftp affiche la liste des sous-commandes répertoriées.
account [Mot de passe] Envoie un mot de passe supplémentaire susceptible d'être requis par un hôte distant avant d'autoriser l'accès à ses ressources. Si le mot de passe n'est pas défini avec la commande, l'utilisateur est invité à l'entrer. Le mot de passe ne s'affiche pas à l'écran.
append FichierLocal [FichierDistant] Ajoute un fichier local au fichier hébergé sur l'hôte distant. Si le nom du fichier distant n'est pas indiqué, le fichier local est utilisé, modifié par tout paramètre associé à la sous-commande ntrans ou nmap. La sous-commande append utilise les valeurs en cours des sous-commandes form , mode, struct et type lors de l'ajout du fichier.
ascii Synonyme de la sous-commande type ascii.
bell Déclenche un signal sonore au terme du transfert de chaque fichier.
binary Synonyme de la sous-commande type binary.
block Synonyme de la sous-commande mode block.
bye Met fin à la session de transfert de fichiers et arrête la commande ftp. Identique à la sous-commande quit.
carriage-control Synonyme de la sous-commande form carriage-control.
case Sous-commande à bascule associée à la casse des noms de fichier. Si la sous-commande case est activée, la commande ftp remplace les noms de fichier distants affichés tout en majuscules par des minuscules lorsqu'elles les écrit dans le répertoire local. Cette sous-commande est désactivée par défaut (la commande ftp conserve donc les majuscules lorsqu'elle écrit les fichiers distants dans le répertoire local).
cd RépertoireDistant Remplace le répertoire de travail par le répertoire indiqué sur l'hôte distant.
cdup Remplace le répertoire de travail par le père du répertoire en cours sur l'hôte distant.
close Met fin à la session de transfert de fichiers, mais n'arrête pas la commande ftp. Les macros définies sont effacées. Identique à la sous-commande disconnect.
copylocal Cette sous-commande à bascule active/désactive la copie locale. copylocal est désactivée par défaut. ftp tente de s'assurer que vous ne mettez pas à zéro un fichier en le transférant vers lui-même (même nom d'hôte, même chemin). En activant copylocal, vous contournez cette vérification.
cr Supprime le caractère de retour chariot d'une séquence retour chariot et saut de ligne dans les enregistrements reçus pendant un transfert de fichiers ASCII. (La commande ftp termine chaque enregistrement de type ASCII par un retour chariot et saut de ligne lors du transfert de fichiers.)

Les enregistrements hébergés sur les hôtes distants dont le système d'exploitation n'est pas identique au vôtre peuvent contenir des sauts de ligne unique. Pour distinguer ces sauts de ligne imbriqués des délimiteurs d'enregistrements, réglez la sous-commande cr sur Off. Cette sous-commande bascule entre On et Off.

debug [0 | 1] Active (On) ou désactive (Off) la conservation des enregistrements de débogage. Spécifiez debug ou debug 1 pour imprimer chaque commande envoyée à l'hôte distant et enregistrer le fichier de contrôle du redémarrage. Spécifiez à nouveau debug ou debug 0 pour désactiver la conservation des enregistrements de débogage. La séquence de touches Ctrl-C enregistre également le fichier de contrôle de redémarrage.

Définir la sous-commande debug envoie des informations de débogage relatives aux opérations de la commande ftp au démon syslogd. Si vous spécifiez la sous-commande debug, vous devez modifier le fichier /etc/syslog.conf et ajouter l'une des entrées suivantes :

user.info NomFichier

OU

user.debug NomFichier

Remarque : Le niveau de débogage du démon syslogd comprend les messages d'information.

Si vous ne modifiez pas le fichier /etc/syslog.conf, aucun message n'est généré. Après avoir modifié le fichier /etc/syslog.conf, exécutez la commande refresh -s syslogd ou kill -1 IDPSyslogd pour avertir le démon syslogd des modifications effectuées dans son fichier de configuration. Pour plus d'informations sur les niveaux de débogage, voir le fichier /etc/syslog.conf. Consultez également l'option ftp -d.

delete FichierDistant Supprime le fichier distant indiqué.
dir [RépertoireDistant ][FichierLocal] Répertorie le contenu du répertoire distant indiqué (RépertoireDistant) dans le fichier local indiqué (FichierLocal). Si vous ne spécifiez pas le paramètre RépertoireDistant, la sous-commande dir indique le contenu du répertoire distant en cours. Si vous ne spécifiez pas le paramètre FichierLocal ou que vous entrez un tiret (-), la sous-commande dir affiche la liste sur le terminal local.
disconnect Met fin à la session de transfert de fichiers, mais n'arrête pas la commande ftp. Les macros définies sont effacées. Identique à la sous-commande close.
ebcdic Synonyme de la sous-commande type ebcdic.
exp_cmd Bascule entre les commandes de protocole conventionnelles et expérimentales. Elle est désactivée par défaut.
file Synonyme de la sous-commande struct file.
form [ carriage-control | non-print | telnet ] Indique le format du transfert de fichier. La sous-commande form modifie la sous-commande type pour envoyer le transfert de fichier au format spécifié. Arguments valides : carriage-control, non-print et telnet.
carriage-control
Règle le format du transfert de fichier sur "carriage-control".
non-print
Règle le format du transfert de fichier sur "non-print".
telnet
Règle le format du transfert de fichier sur "Telnet". Telnet est un protocole TCP/IP (Transmission Control Protocol/Internet Protocol) qui ouvre les connexions à un système.
get FichierDistant [FichierLocal] Copie le fichier distant sur l'hôte local. Si vous ne spécifiez pas le paramètre FichierLocal, le nom du fichier distant est utilisé localement et est modifié par tout paramètre des sous-commandes case, ntrans et nmap. La commande ftp utilise les paramètres en cours des sous-commandes type, form, mode et struct lors du transfert du fichier.
glob Active/désactive l'expansion de nom de fichier (ou globbing) pour les sous-commandes mdelete, mget et mput. Si la fonction globbing est désactivée, les paramètres de nom de fichier de ces sous-commandes ne sont pas développés. Si la fonction globbing est activée et que vous utilisez un métacaractère dans une sous-commande qui attend un nom de fichier unique, les résultats risquent de ne pas correspondre aux valeurs attendues.

Par exemple, les sous-commandes append et put exécutent une expansion de nom de fichier, puis n'utilisent que le premier nom de fichier généré. D'autres sous-commandes ftp, telles que cd, delete, get, mkdir, rename et rmdir, n'exécutent pas d'expansion de nom de fichier et interprètent littéralement les métacaractères.

Pour la sous-commande mput, la fonction globbing est effectué localement, à l'instar de la commande csh. Pour les sous-commandes mdelete et mget, chaque nom de fichier est développé séparément sur le poste distant et les listes ne sont pas fusionnées. Selon l'hôte distant et le serveur ftp, l'expansion d'un nom de répertoire est parfois différent de celui d'un nom de fichier.

Pour afficher un aperçu de l'expansion d'un nom de répertoire, utilisez la sous-commande mls :

mls FichierDistant 

Pour transférer la sous-arborescence de fichiers entière d'un répertoire, archivez-la au format tar en mode binaire, plutôt qu'utiliser la sous-commande mget ou mput.

hash Active/désactive l'impression du symbole dièse (#). Si la sous-commande hash est activée, la commande ftp affiche un symbole dièse par bloc de données (1 024 octets) transféré.
help [Sous-commande] Affiche des informations d'aide. Voir la sous-commande ? .
image Synonyme de la sous-commande type image.
lcd [Répertoire] Modifie le répertoire de travail sur l'hôte local. Si vous n'indiquez pas de répertoire, la commande ftp utilise votre répertoire personnel.
local M Synonyme de la sous-commande type local M.
ls [RépertoireDistant] [FichierLocal] Ecrit la liste abrégée de fichiers que contient un répertoire distant dans un fichier local. Si vous ne spécifiez pas le paramètreRépertoireDistant, la commande ftp affiche le contenu du répertoire distant en cours. Si vous ne spécifiez pas le paramètre FichierLocal ou que vous entrez un tiret (-), la commande ftp affiche la liste sur le terminal local.
macdef Macro Définit une macro de sous-commande. Les lignes suivantes sont enregistrées en tant que texte de la macro jusqu'à une ligne vide (soit deux sauts de ligne consécutifs). Vous pouvez définir jusqu'à 16 macros, soit au plus 4 096 caractères. Les macros demeurent définies jusqu'à ce que vous modifiez leur définition ou qu'une sous-commande close soit exécutée.

Le symbole du dollar ($) et la barre oblique inversée (\) sont des caractères spéciaux dans les macros ftp. Un symbole de dollar suivi d'un ou de plusieurs nombres est remplacé par le paramètre de macro correspondant sur la ligne d'appel (voir la sous-commande $ ). Un symbole de dollar suivi de la lettre i indique que la macro doit être répétée en boucle, la combinaison de caractères $i étant remplacée par des paramètres consécutifs à chaque passe.

Le premier paramètre de la macro est utilisé lors de la première passe, le deuxième paramètre lors de la deuxième passe, et ainsi de suite. Le symbole de barre oblique inversée (\) empêche le caractère suivant de subir un traitement spécial. Utilisez-le pour désactiver la signification spéciale des symboles $ et \.

mdelete FichiersDistants Développe les fichiers spécifiés par le paramètre FichiersDistants sur l'hôte distant et supprime les fichiers distants.
mdir [RépertoiresDistants FichierLocal] Développe les répertoires spécifiés par le paramètre RépertoiresDistants sur l'hôte distant et répertorie le contenu de ces répertoires dans le fichier indiqué par le paramètre FichierLocal. Si le paramètre RépertoiresDistants contient un métacaractère, la sous-commande mdir invite l'utilisateur à indiquer le fichier local, le cas échéant. Si le paramètre RépertoiresDistants est une liste de répertoires distants séparés par des caractères blancs, le dernier argument de la liste doit être un nom de fichier local ou un tiret (-).

Si le paramètre FichierLocal est un tiret (-), la sous-commande mdir affiche la liste sur le terminal local. Si la fonction d'invite en mode interactif est activée (voir la sous-commande prompt), la commande ftp invite l'utilisateur à vérifier que le dernier paramètre est un fichier local et non un répertoire distant.

mget FichiersDistants Développe le paramètre FichiersDistants sur l'hôte distant et copie les fichiers distants indiqués dans le répertoire en cours sur l'hôte local. Pour plus d'informations sur l'expansion des noms de fichier, voir la sous-commande glob. Les noms de fichier distant sont utilisés localement et sont modifiés par tout paramètre des sous-commandes case, ntrans et nmap. La commande ftp utilise les paramètres en cours des sous-commandes form, mode, struct et type lors du transfert des fichiers.
mkdir [RépertoireDistant] Crée le répertoire indiqué par le paramètre RépertoireDistant sur l'hôte distant.
mls [RépertoiresDistants FichierLocal] Développe les répertoires spécifiés par le paramètre RépertoiresDistants sur l'hôte distant et écrit une liste abrégée du contenu des répertoires distants indiqués dans un fichier local. Si le paramètre RépertoiresDistants contient un métacaractère, la sous-commande mls invite l'utilisateur à indiquer le fichier local, le cas échéant. Si le paramètre RépertoiresDistants est une liste de répertoires distants séparés par des caractères blancs, le dernier argument de la liste doit être un nom de fichier local ou un tiret (-).

Si le paramètre FichierLocal est un tiret (-), la sous-commande mls affiche la liste sur le terminal local. Si la fonction d'invite en mode interactif est activée (voir la sous-commande prompt), la commande ftp invite l'utilisateur à vérifier que le dernier paramètre est un fichier local et non un répertoire distant.

mode [ stream | block ] Active le mode de transfert de fichier. Si aucun argument n'est spécifié, la valeur par défaut est stream.
block
Règle le mode de transfert de fichier sur "block".
stream
Règle le mode de transfert de fichier sur "stream".
modtime Indique l'heure de la dernière modification du fichier indiqué sur le poste distant. Si la commande ftp n'est pas connectée à un hôte avant l'exécution, la sous-commande modtime s'arrête et un message d'erreur est généré. La commande ftp ne tient compte que du premier paramètre. Si vous ne spécifiez pas le paramètre NomFichier, la commande ftp vous invite à indiquer un nom de fichier. Si aucun nom de fichier n'est indiqué, la commande ftp envoie un message d'utilisation à la sortie standard et arrête la sous-commande.

Si le nom indiqué par le paramètre NomFichier existe sur l'hôte distant et qu'il spécifie un fichier, la commande ftp envoie un message contenant l'heure de la dernière modification du fichier à la sortie standard et arrête la sous-commande. Si NomFichier spécifie un répertoire, la commande ftp envoie un message d'erreur à la sortie standard et arrête la sous-commande.

Remarque : La sous-commande modtime interprète les métacaractères si elle y est autorisée.
mput [FichiersLocaux] Développe les fichiers spécifiés par le paramètre FichiersLocaux sur l'hôte local et copie les fichiers locaux indiqués sur l'hôte distant. Pour plus d'informations sur l'expansion des noms de fichier, voir la sous-commande glob. Les noms de fichier local sont utilisés par l'hôte distant et sont modifiés par tout paramètre des sous-commandes ntrans et nmap. La commande ftp utilise les paramètres en cours des sous-commandes type, form, mode et struct lors du transfert des fichiers.
nlist [RépertoireDistant][FichierLocal] Répertorie le contenu du répertoire distant indiqué (RépertoireDistant) dans le fichier local indiqué (FichierLocal). Si vous ne spécifiez pas le paramètre RépertoireDistant, la sous-commande nlist affiche le contenu du répertoire distant en cours. Si vous ne spécifiez pas le paramètre FichierLocal ou que vous entrez un tiret (-), la sous-commande nlist affiche la liste sur le terminal local.
nmap [ModèleEntrant ModèleSortant] Active (On) ou désactive (Off) le mécanisme de mappage des noms de fichier. Si vous ne spécifiez pas de paramètre, le mappage des noms de fichier est désactivé. Si vous spécifiez des paramètres, les noms de fichier source sont mappés pour les sous-commandes mget et mput, ainsi que pour les sous-commandes get et put lorsque le nom du fichier cible n'est pas indiqué. Cette sous-commande s'avère utile lorsque les hôtes locaux et distants utilisent des conventions ou règles de dénomination différentes. Le mappage est conforme au modèle défini par les paramètres ModèleEntrant et ModèleSortant.

Le paramètre ModèleEntrant définit le canevas associé aux noms de fichier entrant, susceptibles d'avoir déjà été traités en fonction des paramètres case et ntrans. Les variables du canevas $1 à $9 peuvent être incluses dans le paramètre ModèleEntrant. Tous les caractères du paramètre ModèleEntrant autres que le symbole du dollar ($) et ceux de la barre oblique inversée et du dollar (\$) sont traités littéralement et servent de délimiteurs entre les variables de ModèleEntrant. Par exemple, si le paramètre ModèleEntrant est réglé sur $1.$2 et que le nom du fichier distant est mesdonnees.dat, la valeur de $1 est mesdonnees et la valeur de $2 est dat.

Le paramètre ModèleSortant détermine le nom du fichier résultant. Les variables $1 à $9 sont remplacées par la valeur déterminée par le paramètre ModèleEntrant, la variable $0 est remplacée par le nom de fichier d'origine. En outre, la séquence [Séquence1,Séquence2] est remplacée par la valeur de Séquence1, sous réserve que Séquence1 ne soit pas nulle. Dans le cas contraire, elle est remplacée par Séquence2. Par exemple, la sous-commande :

nmap $1.$2.$3 [$1,$2].[$2,fichier]

renvoie monfichier.donnees de monfichier.donnees ou monfichier.donnees.prec, monfichier.fichier de monfichier et monfichier.monfichier de .monfichier. Utilisez le symbole de barre oblique inversée (\) pour activer l'interprétation littérale du symbole du dollar ($), du crochet gauche ([), du crochet droit (]) et de la virgule (,) dans le paramètre ModèleSortant.

non-print Synonyme de la sous-commande form non-print.
ntrans [CaractèresEntrants [CaractèresSortants]] Active (On) ou désactive (Off) le mécanisme de transcodage des caractères d'un nom de fichier. Si vous ne spécifiez pas de paramètre, le transcodage des caractères est désactivé. Si vous spécifiez des paramètres, les caractères des noms de fichier source sont transcodés pour les sous-commandes mget et mput, ainsi que pour les sous-commandes get et put lorsque le nom du fichier cible n'est pas indiqué.

Cette sous-commande s'avère utile lorsque les hôtes locaux et distants utilisent des conventions ou règles de dénomination différentes. Le transcodage de caractères est conforme au modèle défini par le paramètre CaractèresEntrants et CaractèresSortants. Les caractères d'un nom de fichier source qui correspondent aux caractères du paramètre CaractèresEntrants sont remplacés par les caractères correspondants du paramètre CaractèresSortants.

Si la chaîne indiquée par le paramètre CaractèresEntrants est plus longue que la chaîne indiquée par le paramètre CaractèresSortants, les caractères du paramètre CaractèresEntrants sont supprimés s'ils ne correspondent pas à un caractère du paramètre CaractèresSortants.

open NomHôte [Port] Etablit une connexion au serveur FTP sur l'hôte indiqué par le paramètre NomHôte. Si le numéro de port facultatif est spécifié, la commande ftp tente d'établir une connexion au serveur sur ce port. Si la fonction de connexion automatique est activée (en d'autres termes, vous n'avez pas spécifié l'option -n sur la ligne de commande), la commande ftp tente d'ouvrir une session pour l'utilisateur sur le serveur FTP.

Vous devez également disposer d'un fichier $HOME/.netrc contenant des informations correctes et des droits d'accès appropriés. Le fichier .netrc doit résider dans votre répertoire personnel.

passive Active ou désactive le mode passif pour les transferts de fichier. Si vous appelez une commande de transfert de fichier (telle que get, mget, put ou mput) et que le mode passif est désactivé, le serveur ftp ouvre une connexion de données vers le client. En mode passif, le client ouvre des connexions de données vers le serveur lors de l'envoi ou de la réception de données.
private Règle le niveau d'authentification sur "private". Ce niveau permet de protéger l'intégrité et la confidentialité des données.
prompt Active ou désactive la génération d'invite en mode interactif. Si ce mécanisme est activé (valeur par défaut), la commande ftp demande une vérification avant d'extraire, d'envoyer ou de supprimer plusieurs fichiers par le biais des sous-commandes mget, mput et mdelete. Dans le cas contraire, la commande ftp exécute l'opération requise sur tous les fichiers spécifiés.
protect Cette commande renvoie le niveau en cours de protection.
proxy [Sous-commande] Exécute une commande ftp sur une connexion de contrôle secondaire. Cette sous-commande permet à la commande ftp de se connecter simultanément à deux serveurs FTP distants pour transférer des fichiers entre les deux serveurs. La première sous-commande proxy doit correspondre à une sous-commande open pour établir la connexion de contrôle secondaire. Entrez la sous-commande proxy ? pour visualiser les autres sous-commandes ftp que vous pouvez exécuter sur la connexion secondaire.

Le comportement des sous-commandes suivantes est différent si elles sont précédées de la sous-commande proxy :

  • La sous-commande open ne définit pas de nouvelles macros lors du processus de connexion automatique.
  • La sous-commande close n'efface pas les définitions de macro existantes.
  • Les sous-commandes get et mget transfèrent des fichiers de l'hôte associé à la connexion principale vers l'hôte associé à la connexion secondaire.
  • Les sous-commandes put, mput et append transfèrent des fichiers de l'hôte associé à la connexion secondaire vers l'hôte associé à la connexion principale.
  • La sous-commande restart peut être traitée par la commande proxy.
  • La sous-commande status affiche des informations correctes.

Les transferts de fichier nécessitent la prise en charge de l'instruction PASV (passive) par le serveur FTP associé à la connexion secondaire.

put FichierLocal [FichierDistant] Stocke un fichier local sur l'hôte distant. Si vous ne spécifiez pas le paramètre FichierDistant, la commande ftp attribue au fichier distant le nom du fichier local et le nom du fichier distant est modifié par tout paramètre des sous-commandes ntrans et nmap. La commande ftp utilise les paramètres en cours des sous-commandes type, form, mode et struct lors du transfert des fichiers.
pwd Affiche le nom du répertoire en cours sur l'hôte distant.
quit Ferme la connexion et arrête la commande ftp. Identique à la sous-commande bye.
quote Chaîne Envoie la chaîne spécifiée par le paramètre Chaîne à l'hôte distant. Exécute la sous-commande remotehelp ou quote help pour afficher la liste des valeurs valides du paramètre Chaîne.

Remarque : "Citer" des commandes qui impliquent des transferts de données risque de donner lieu à des résultats imprévisibles.
record Synonyme de la sous-commande struct record.
recv FichierDistant [FichierLocal] Copie le fichier distant sur l'hôte local. Identique à la sous-commande get.
reinitialize Réinitialise une session FTP en vidant toutes les entrées-sorties et en autorisant l'exécution des transferts en cours. Réinitialise toutes les valeurs par défaut si un utilisateur vient de débuter une session FTP sans se connecter à un hôte distant.
remotehelp [Sous-commande] Demande de l'aide au serveur FTP distant.
rename NomSource NomCible Renomme un fichier sur l'hôte distant.
reset Efface le contenu de la file d'attente de réponses. Cette sous-commande resynchronise l'analyse syntaxique.
restart get | put | append Redémarre un transfert de fichier à l'endroit où le dernier point de contrôle a été effectué. Pour aboutir, la sous-commande doit être identique à la sous-commande abandonnée (structure, type et format compris). Arguments valides : get, put et append.
rmdir RépertoireDistant Supprime le répertoire distant indiqué par le paramètre RépertoireDistant sur l'hôte distant.
runique (ReceiveUnique) Active/désactive la fonction de création de noms de fichier uniques pour les fichiers cible locaux avec les sous-commandes get et mget. Si cette fonction est désactivée (valeur par défaut), la commande ftp écrase les fichiers locaux. Dans le cas contraire, si un fichier local porte le même nom que celui d'un fichier cible local, la commande ftp modifie le nom indiqué du fichier cible local (.1). Si un fichier local porte déjà le nouveau nom, la commande ftp ajoute le suffixe .2 au nom indiqué. Si un fichier local porte déjà le deuxième nom, la commande ftp poursuit l'incrémentation du suffixe jusqu'à ce qu'un nom de fichier unique soit généré ou atteigne .99 sans obtenir de nom de fichier unique. Si la commande ftp ne détecte pas de nom unique, elle signale une erreur et le transfert n'est pas effectué. Notez que la sous-commande runique n'affecte pas les noms de fichier local générés par une commande shell.
safe Règle le niveau d'authentification sur "safe". Ce niveau permet de protéger l'intégrité des données.
send FichierLocal [FichierDistant] Stocke un fichier local sur l'hôte distant. Identique à la sous-commande put.
sendport Active/désactive l'utilisation des instructions FTP PORT. Par défaut, la commande ftp utilise une instruction PORT lors de l'établissement d'une connexion à chaque transfert de données. Si l'utilisation des instructions PORT est désactivée, la commande ftp n'y fait pas appel lors des transferts de données. L'instruction PORT s'avère utile lorsque vous utilisez des serveurs FTP qui ne tiennent pas compte des instructions PORT tout en indiquant incorrectement que les instructions ont été acceptées.
site Args Affiche ou définit le délai d'inactivité, affiche ou définit le umask de création de fichier ou modifie les droits d'accès sur un fichier par le biais de la commande chmod. Les valeurs gérées du paramètre Args sont umask et chmod.
size FichierDistant Affiche la taille en octets du fichier distant indiqué par le paramètre FichierDistant.
status Affiche l'état en cours de la commande ftp, ainsi que celui des sous-commandes.
stream Synonyme de la sous-commande mode stream.
struct [ file | record ] Définit le type de structure des transferts de données. Les arguments valides sont file et record.
file
Règle le type de structure des transferts de données sur "file".
record
Règle le type de structure des transferts de données sur "record".
sunique (Send/Store Unique) Active/désactive la fonction de création de noms de fichier uniques pour les fichiers cible distants avec les sous-commandes put et mput. Si cette fonction est désactivée (valeur par défaut), la commande ftp écrase les fichiers distants. Dans le cas contraire, si un fichier distant porte le même nom que celui d'un fichier cible distant, le serveur FTP distant modifie le nom du fichier cible distant. Notez que le serveur distant doit prendre en charge l'instruction STOU.
system Indique le type de système d'exploitation qui tourne sur le poste distant.
telnet Synonyme de la sous-commande form telnet.
tenex Synonyme de la sous-commande type tenex.
trace Active/désactive le repérage des paquets.
type [ ascii | binary | ebcdic | image | local M | tenex ] Définit le type de transfert de fichier. Les arguments valides sont ascii, binary, ebcdic, image, local M et tenex. Si vous ne définissez pas d'argument, le type en cours est imprimé. Le type par défaut est ascii, mais le type binary est parfois plus efficace que ascii.
ascii
Règle le type de transfert de fichier sur "network". Il s'agit de la valeur par défaut. Le type binary-image est parfois plus efficace. Pour plus d'informations, voir l'argument binary.
binary
Règle le type de transfert de fichier sur "binary image". Ce type est parfois plus efficace qu'un transfert ASCII.
ebcdic
Règle le type de transfert de fichier sur "EBCDIC".
image
Règle le type de transfert de fichier sur "binary image". Ce type est parfois plus efficace qu'un transfert ASCII.
local M
Règle le type de transfert de fichier sur "local". Le paramètre M définit le nombre décimal de bits par mot machine. Aucune valeur par défaut n'est définie.
tenex
Active le type de transfert de fichier requis par les machines TENEX.
user Utilisateur [Mot de passe] [Compte] Identifie l'utilisateur local (Utilisateur) auprès du serveur FTP distant. Si vous ne définissez pas le paramètre Mot de passe ou Compte et que le serveur distant le requiert, la commande ftp vous invite à entrer localement le mot de passe ou le compte. Si le paramètre Compte doit être indiqué, la commande ftp l'envoie au serveur distant au terme du processus de connexion à distance.

Remarque : A moins que la connexion automatique ne soit désactivée par la présence de l'option -n sur la ligne de commande, la commande ftp envoie automatiquement les paramètres Utilisateur, Mot de passe et Compte pour la connexion initiale au serveur distant. Votre répertoire personnel doit également contenir un fichier .netrc pour prendre en charge une connexion automatique.
verbose Active/désactive le mode prolixe. Si ce mode est activé (valeur par défaut), la commande ftp affiche toutes les réponses provenant du serveur FTP distant. Elle affiche en outre les statistiques relatives à tous les transferts de fichier, une fois ceux-ci terminés.

Exemples

  1. Pour appeler la commande ftp, ouvrir une session sur le système canopus, afficher des informations d'aide locales, afficher des informations d'aide distantes, afficher l'état, faire basculer les sous-commandes bell, prompt, runique, trace et verbose, puis quitter le système, entrez :

    $ ftp canopus
    Connected to canopus.austin.century.com.
    220 canopus.austin.century.com FTP server (Version 4.1 Sat Nov 23 12:52:09 CST 1991) ready.
    Name (canopus:eric): dee
    331 Password required for dee.
    Password:
    230 User dee logged in.
    ftp> help
    Commands may be abbreviated. Commands are:
    !          delete          mdelete          proxy          runique
    $          debug           mdir             sendport       send
    account    dir             mget             put            size
    append     disconnect      mkdir            pwd            status
    ascii      form            mls              quit           struct
    bell       get             mode             quote          sunique
    binary     glob            modtime          recv           system
    bye        hash            mput             remotehelp     tenex
    case       help            nmap             rstatus        trace
    cd         image           nlist            rhelp          type
    cdup       lcd             ntrans           rename         user
    close      ls              open             reset          verbose
    cr         macdef          prompt           rmdir          ?
    clear      private         protect          safe
    ftp> remotehelp
    214-The following commands are recognized(* =>'s unimplemented).
     USER   PORT   RETR   MSND*  ALLO   DELE   SITE*  XMKD   CDUP 
     PASS   PASV   STOR   MSOM*  REST*  CWD    STAT*  RMD    XCUP
     ACCT*  TYPE   APPE   MSAM*  RNFR   XCWD   HELP   XRMD   STOU 
     REIN*  STRU   MLFL*  MRSQ*  RNTO   LIST   NOOP   PWD 
     QUIT   MODE   MAIL*  MRCP*  ABOR   NLST   MKD    XPWD 
     AUTH   ADAT   PROT   PBSZ   MIC    ENC    CCC
    214 Direct comments to ftp-bugs@canopus.austin.century.com.
    ftp> status
    Connected to canopus.austin.century.com.
    No proxy connection.
    Mode: stream; Type: ascii; Form: non-print; Structure: file
    Verbose: on; Bell: off; Prompting: on; Globbing: on
    Store unique: off; Receive unique: off
    Case: off; CR stripping: on
    Ntrans: off
    Nmap: off
    Hash mark printing: off; Use of PORT cmds: on
    ftp> bell
    Bell mode on.
    ftp> prompt
    Interactive mode off.
    ftp> runique
    Receive unique on.
    ftp> trace
    Packet tracing on.
    ftp> verbose
    Verbose mode off.
    ftp> quit
    $ 
  2. Pour appeler la commande ftp, ouvrir une session sur le système canopus, imprimer le contenu du répertoire de travail, changer de répertoire de travail, régler le type du transfert de fichier sur ASCII, envoyer un fichier local à l'hôte distant, régler le répertoire de travail sur le répertoire parent, puis quitter le système, entrez :

    $ ftp canopus
    Connected to canopus.austin.century.com.
    220 canopus.austin.century.com FTP server (Version 4.1 Sat Nov 23 12:52:09 CST 1991) ready.
    Name (canopus:eric): dee
    331 Password required for dee.
    Password:
    230 User dee logged in.
    ftp> pwd
    257 "/home/dee" is current directory.
    ftp> cd desktop
    250 CWD command successful.
    ftp> type ascii
    200 Type set to A.
    ftp> send typescript
    200 PORT command successful.
    150 Opening data connection for typescript (128.114.4.99,1412).
    226 Transfer complete.
    ftp> cdup
    250 CWD command successful.
    ftp> bye
    221 Goodbye.
    $ 
  3. Pour appeler la commande ftp avec connexion automatique (à l'aide du fichier .netrc), ouvrir une session sur le système canopus, se connecter, régler le répertoire de travail sur le répertoire père, imprimer le contenu du répertoire de travail, recenser le contenu du répertoire en cours, supprimer un fichier, écrire la liste du contenu du répertoire en cours dans un fichier local, fermer la session, puis quitter le système, entrez :

    $ ftp canopus
    Connected to canopus.austin.century.com.
    220 canopus.austin.century.com FTP server (Version 4.1 Sat Nov 23 12:52:09 CST 1991) ready.
    331 Password required for dee.
    230 User dee logged in.
    ftp> cdup
    250 CWD command successful.
    ftp> pwd
    257 "/home" is current directory.
    ftp> dir
    200 PORT command successful.
    150 Opening data connection for /usr/bin/ls (128.114.4.99,1407) 
    (0 bytes).
    total 104
    drwxr-xr-x   2 system        32 Feb 23 17:55 bin
    Drwxr-xr-x  26 rios        4000 May 30 17:18 bin1
    drwxr-xr-x   2 system        32 Feb 23 17:55 books
    drwxrwxrwx  18 rios        1152 Jun  5 13:41 dee
    -r--r--r--   1 system      9452 May 17 12:21 filesystems
    drwxr-xr-x   2 system        32 Feb 23 17:55 jim
    drwxr-xr-x   5 system        80 Feb 23 17:55 krs
    drwxrwxrwx   2 rios       16432 Feb 23 17:36 lost+found
    -rwxr-xr-x   1 rios        3651 May 24 16:45 oldmail
    drwxr-xr-x   2 system       256 Feb 23 17:55 pubserv
    drwxrwxrwx   2 system       144 Feb 23 17:55 rein989
    drwxr-xr-x   2 system       112 Feb 23 17:55 reinstall
    226 Transfer complete.
    ftp> delete oldmail
    250 DELE command successful.
    ftp> mdir /home/dee/bin binlist
    output to local-file: binlist? y
    200 PORT command successful.
    150 Opening data connection for /usr/bin/ls (128.114.4.99,1408) (0 bytes).
    226 Transfer complete.
    ftp> close
    221 Goodbye.
    ftp> quit
    $  

Fichiers

/usr/samples/tcpip/netrc Contient l'exemple de fichier .netrc.
/etc/syslog.conf Contient des informations de configuration du démon syslogd.

Rubriques connexes

Commande stty.


Envoyer un commentaire | Evaluer la page