Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

FTP

ИМЯ
ftp - протокол передачи файлов

СИНТАКСИС


  ftp [-v] [-d] [-i] [-n] [-U] [-p] [-g] [host]

ОПИСАНИЕ
Программа ftp позволяет передавать файлы на удаленный компьютер или получать их оттуда, и работает с файлами и каталогами удаленного компьютера.

РАБОТА С FTP.
Чтобы использовать программу ftp, вам нужно открыть связь между вашей и удаленной машиной, куда или откуда вы хотите переместить файл. Эта программа позволяет вам иметь несколько связей одновременно, хотя вы можете давать команды, которые воздействуют только на одну связь. Многомашинная связь позволяет вам связаться с несколькими машинами за один сеанс работы ftp. Вам нет необходимости вновь регистрироваться на другой машине, когда вы хотите сменить машину для связи. Связь, которая используется в данный момент, называется текущей связью.

Виды записи файла для передачи в ftp.
Программа ftp позволяет использовать два вида записи: ASCII или двоичный. Используйте ASCII для текстовых файлов. Двоичный вид используется для двоичных данных, которые должны представлять собой непрерывную последовательность бит. ASCII задается по умолчанию. Двоичный вид может быть использован для некоторых специальных файлов, например программ, картинок, архивов.

Вызов ftp.
Чтобы вызвать ftp из оболочки UNIX, введите команду ftp. Когда команда это выполнено, на вашем экране появится приглашение этой команды. Оно выглядит следующим образом:


  ftp>

Вы можете указать имя машины, с которой хотите связаться, хотя это необязательно. Следующий пример показывает как записывается имя машины ftp.botik.ru:

  $ ftp ftp.botik.ru

Это эквивалентно использованию команды ftp open для установления связи с машиной, которую вы назвали. Вы можете также вызвать ftp без имени машины, например:

  $ ftp

Если вы не установили имя машины при вызове ftp, вы должны открыть связь с этой машиной в ftp. Это делается используя ftp open команду до того как вы начали передавать файлы. Для более детальной информации по этому вопросу смотрите раздел "Описание ftp команд" дальше в этой главе.

Опции ftp.
Дополнительно при вызове ftp, вы можете задать некоторые опции этой команды. Эти опции помещаются после названия команды ftp, но до имени машины, если оно указывается. Каждая опция состоит из дефиса (-) и одной буквы, например: -v. Каждая опция имеет соответствующую команду того же имени, которая может быть использована внутри ftp. Вам следует различать использование опций и соответствующих ftp команд.

-v Заставляет ftp работать в многословном режиме. В этом режиме сообщения ftp, посланные удаленной машиной в ftp появляются на экране вашего дисплея. Кроме того, если вы используете этот режим после завершения передачи каждого файла появляется статистическое сообщение об этом. Этот режим устанавливается по умолчанию, если ftp выполняется интерактивно. Если ftp выполняется в командном режиме, многословный режим выключен, тогда его включает опция -v. Вы можете включить этот режим внутри ftp с помощью команды verbose.
-d Заставляет ftp работать в режиме отладки. В этом режиме сообщения ftp, посланные ftp в удаленную машину, отображаются на экране вашего дисплея. Если вы не используете эту опцию, информация не отображается. Вы можете также вызвать этот режим в ftp, используя команду debug.
-n Предотвращает использование ftp авторегистрации, во время связи с удаленной машиной. Когда установлен режим авторегистрации, ftp идентифицирует вас автоматически на удаленной машине и регистрирует вас на этой машине. (Смотрите раздел "Использование файла .netrc файла для автоматической регистрации" далее в этом разделе.) Если вы используете -n опцию для отключения автоматической регистрации, вы должны будете использовать команду user, чтобы вручную зарегистрироваться на удаленной машине.
-g Является причиной лишения имен файлов UNIX их расширений, таких как универсальное (*). Если вы не используете эту опцию, ftp расширяет имена файлов с помощью универсального расширения в списке файлов. Вместо этой опции можно использовать команду glob.
Ниже даны примеры использования ftp опций:

  $ ftp -v -d ftp.botik.ru

Вышеприведенная команда вызывает ftp в многословном и отладочном режиме и побуждает ftp открыть связь с удаленной машиной по имени ftp.botik.ru. В отладочном режиме команды, посылаемые к удаленной машине, изображаются на вашем экране. Многословный режим изображает ответы получателя и статистические сведения о полученных байтах информации.

  $ ftp -vd

Вышеприведенная команда вызывает ftp в многословном и отладочном режиме, но не открывает связи с удаленной машиной.

  $ ftp -ng ftp.botik.ru

Вышеприведенная команда вызывает ftp c отменой авторегистрации и универсального расширения, и заставляет открыть связь с удаленной машиной ftp.botik.ru.

  $ ftp -n -d

Вышеприведенная команда вызывает ftp с отменой авторегистрации и универсального расширения, не открывая связи с какой-либо машиной.

Использование файла .netrc для автоматической регистрации.
Вы можете создать файл по имени .netrc в вашем домашнем каталоге в качестве дополнительного удобства. Этот файл содержит строки-элементы регистрационных данных для каждой машины, которая вам нужна для автоматической связи. Когда вы вызываете ftp, указывая машину, т. е. когда вы одновременно с вызовом открываете связь с машиной, ftp читает файл .netrc. Если есть строка-элемент для этой машины, то ftp автоматически соединяет вашу машину с этой удаленной машиной. Если вы открыли связь в многословном режиме, то вы увидите как это происходит. Формат файла состоит из отдельных полей, представленных ключевыми полями:


  machine  имя  login  имя  password  пароль

где machine, login, password это ключевые слова, за которыми следуют символьные данные, необходимые для регистрации:
machineИмя узла.
loginПользовательское имя для регистрации.
password Пароль пользователя на данном узле. Пароль пишется в нормальной незашифрованной форме текста. Если вы включили ваш пароль в файл .netrc, то вы должны запретить чтение/запись этого файла для вашей группы и всех остальных пользователей, чтобы предотвратить открытие вашего пароля. В противном случае ftp не позволит вам использовать этот файл. Для дополнительной информации по файловым разрешениям смотрите документацию по команде chmod. В записи своего пароля в файл есть определенный риск. Вы должны взвесить все условия безопасности. Спросите своего администратора обо всех особенностях до использования этого файла.
Если вы не введете пароль в файл, ftp спросит вас о нем. Вот пример записи в файле .netrc:

  machine  admin  login  guido  password  open

где: admin - имя узла, guido - пользователь, который регистрируется в машине admin, open - пароль пользователя guido.

Ограничение для ftp команд.
Есть несколько расширенных команд, предоставляющих дополнительные удобства пользователю. Но не все серверы ftp их понимают. Команды, использование которых будет описано позже в этой главе, имеют определенные ограничения. Программа ftp может предоставить список поддерживаемых команд. Для получения такой информации нужно использовать команду remotehelp после установления связи с удаленной машиной.

Описание команд ftp.
Когда на экране появляется приглашение ftp, вы можете вводить одну из команд, описанных ниже в этом разделе. После выполнения команды снова появится приглашение ftp. В зависимости от того, какой режим установлен: многословный или отладочный могут появится дополнительные сообщения. После каждой команды нужно нажимать Enter. Выполнение команды не начнется пока вы не нажмете Enter. Если вы сделали ошибку при наборе команды, вы можете использовать клавишу BACKSPACE для редактирования текста.

Вам нет необходимости вводить имя команды полностью, можно вводить определенное количество символов, достаточное для идентификации. В большинстве случаев это один или два символа от названия команды ftp. Однако, лучше не лениться и набирать команды полностью. Дело в том, что клиент ftp на сервере joker может быть изменен системным администратором. Не все клиенты понимают краткие команды. Например, раньше их можно было использовать. Но в один прекрасный день, программу ftp заменили. Поставили более продвинутую версию. Чем она продвинута я не знаю, но вот короткие команды она не понимает.

! Эта команда приостанавливает ftp и вызывает командный язык (shell) на локальной машине. Любой(ые) символ(ы) после восклицательного знака воспринимаются и выполняются как shell команды. Затем можно вернуться в ftp, выйдя из shell. Все ftp опции и связанные удаленные машины возвращаются в то же самое состояние, которое было до появления этой команды. Если команда shell напечатана в той же строке, где и !, то выполняется только эта команда. После выполнения команды программа ftp возвращается в командный режим.
append Команда append заставляет ftp добавлять содержимое локального файла в конец файла удаленной машины, с которой вы соединены в данный момент. Когда вы вызываете эту команду, вы можете указать какой файл к какому добавить, например:

  ftp> append имя_локального_файла имя_файла_удаленной_машины

Вы можете также использовать только имя команды, а затем получить запрос об имени файлов, например:

  ftp> append
  (local-file) имя_локального_файла
  (remote-file) имя_файла_удаленной_машины

ascii Эта команда побуждает ftp преобразовывать файлы в ASCII код. По умолчанию код всегда ASCII.
bell Эта команда приводит к тому, что на вашем терминале появляется сигнал после завершения передачи каждого файла. Чтобы прекратить подачу сигнала, нужно снова набрать эту команду ftp.
binary Эта команда побуждает ftp передавать файл в двоичном коде.
quit По этой команде осуществляется выход из ftp. Эта команда закрывает все открытые связи.
cd По этой команде имя каталога на удаленной машине заменяется на новое. Вы можете записать новое имя, когда вызываете команду, как показано в примере:

  ftp> cd /usr/bin

Вы можете использовать только имя команды ftp, тогда машина запросит имя нового каталога, например:

  ftp> cd
  (remote-directory) /usr/bin

close По этой команде закрывается текущая связь. Однако, не происходит выхода из ftp. Вы можете создать другую связь.
debug Эта команда включает и выключает отладочный режим. Если режим включается, то об этом появляется сообщение на вашем дисплее, при выключении сообщений нет.
verbose Эта команда включает и выключает многословный режим. Если режим включается, то об этом появляется сообщение на вашем дисплее, при выключении сообщений нет.
delete По этой команде удаляется файл в удаленной машине, к которой вы подключены в данный момент. Вы можете указать имя файла, который нужно удалить, при вызове ftp команды:

  ftp> delete имя файла для удаления

Если вам больше нравится, то вы можете не указывать имя при вызове команды ftp. Тогда машина вас запросит об имени, например:

  ftp> delete
  (remote-file) имя файла для удаления

dir Эта команда выдаст вам оглавление каталога на удаленной машине, к которой вы подключены. Вы можете задать имя каталога, который нужно распечатать, при вызове команды ftp. Например:

  ftp> dir /usr/bin

Если вы не указали имя каталога, то будет распечатан текущий каталог на удаленной машине. Вы можете также побудить ftp занести результаты выполнения команды в файл до того как он появится на экране. Делается это следующим образом:

  ftp> dir /usr/bin printfile

Вы должны указать имя каталога до имени выходного файла (здесь printfile). Таким образом, если вы хотите напечатать текущий каталог в файл, называемый printfile, выполните следующее:

  ftp> dir . printfile

где "." означает текущий каталог.
get Эта команда копирует файл из удаленной машины, к которой вы в данный момент подсоединены. Этот файл копируется в ваш каталог на сервере. Используйте команду mget для копирования нескольких файлов одновременно. Когда вы вызываете эту команду, вы можете указать имя файла на удаленной машине и имя в вашем каталоге, в который вы скопируете файл. Например:

  ftp> get имя_файла_удаленной_машины имя_файла_вашей_машины

Если вы просто укажете имя файла удаленной машины, который нужно скопировать, то файл на вашей машине будет иметь то же самое имя. Пример:

  ftp> get имя_удаленной_машины

Вы можете записать только команду ftp get. Тогда программа ftp запросит вас об имени файла,например:

  ftp> get
  (remote-file) имя файла удаленной машины
  (local-file) имя файла вашей машины

glob Эта команда заставляет ftp запрещать расширение имен файлов UNIX, такое универсальное, как '*'. Эта команда служит и для запрещения и для разрешения расширения таким образом что, если задать ее повторно, то расширение вновь будет разрешено. После разрешения расширения ftp ко всем именам файлов добавит расширение при выводе списка файлов.
hash Эта команда побуждает ftp выдавать на экране символ '#' после каждого блока данных, который посылается удаленной машиной. Размер блоков данных может быть различным в зависимости от версии программного обеспечения. На сегодняшний день на машине joker он 1024 байтам. После ввода этой команды будет напечатан текущий размер блока данных. Эта команда включает и выключает выдачу символа '#' на экран ее при повторном наборе. Таким образом, вы сможете оценить скорость передачи файла.
help Эта команда выдает на экран информацию о работе ftp. Если после help задать имя команды, то появится информация об этой команде. Если набрать просто help, то появится список команд ftp.
lcd Эта команда изменяет рабочий каталог, используемый ftp, на вашей машине. Вы можете задать имя каталога, который вам нужен как рабочий, например:

  ftp> lcd /home/student/имя_вашего_каталог

Если вы не задали имя каталога, то будет использоваться текущий каталог.
ls Эта команда распечатывает аббревиатурный список содержания каталога удаленной машины, с которой вы связаны в данный момент. Вы можете задать имя каталога, который вы хотите распечатать. Например:

  ftp> ls /usr/bin

Если вы не задали имя, будет распечатан текущий каталог. Можно задать, чтобы результаты выполнения команды были помещены в файл до появления их на дисплее. Это делается, если указать имя файла на вашей машине, куда следует поместить листинг каталога, например:

  ftp> ls /usr/bin printfile

Имя каталога нужно задать до вывода файла (здесь printfile). Например, если вы хотите распечатать текущий каталог в файл с именем printfile:

  ftp> ls . printfile

где "." ставится, чтобы подчеркнуть, что каталог текущий.
mdelete Эта команда удаляет список файлов на удаленной машине, с которой вы связаны в данный момент. Вы можете задать имена файлов для удаления при вызове команды. Например:

  ftp> mdelete имя_1файла_удаленной_машины имя_2файла ...

В противном случае вы можете просто использовать имя команды. Программа ftp запросит вас об имени(ах):

  ftp> mdelete
  (remote-files) имя_1файла имя_2файла ...

mdir По этой команде выдается список листинг каталога удаленной машины и результат помещается в файл в вашем каталоге. Вы можете задать список файлов удаленной машины и имя файла вашей машины, куда поместить результат при вызове команды. Например:

  ftp> mdir имя_1файла_удаленной_машины ... printfile

Заметьте, что последнее имя - это имя файла в вашем каталоге. Возможно просто использовать имя команды. Тогда программа ftp запросит у вас имя файлов, например:

  ftp> mdir
  (remote-files) имя_1файла_удаленной_машины ... printfile
  local-file printfile? y

mget Эта команда копирования нескольких файлов с удаленной машины, к которой вы подключены в данный момент в ваш каталог. Файлы после копирования будут иметь те же имена, что и на удаленной машине. Вы можете указать список файлов для копирования:

  ftp> mget имя_1файла_удаленной_машины имя_2файла ...

Если вы не задали имена файлов при вызове команды, программа ftp запросит вас о них:

  ftp> mget
  (remote-files) имя_1файла_удаленной_машины имя_2файла ...

mkdir Эта команда создает каталог на удаленной машине, к которой вы в данный момент подключаетесь. Вы можете задать имя каталога при вызове команды, например:

  ftp> mkdir /u/mydir

Если вы не задали имя, ftp запросит вас о нем, например:

  ftp> mkdir
  (directory-name) имя_каталога

Разумеется, для выполнения этой команды вы должны иметь право на запись на удаленной машине.
mls Эта команда получает аббревиатурный список группы файлов текущего каталога на удаленной машине и помещает результат в файл на вашей машине. Вы можете задать список файлов удаленной машины и файл вашей машины, куда поместить результат при вызове команды, например:

  ftp> mls имя_1файла_удаленной_машины ... printfile

Вы можете не указывать имена при вызове команды, и тогда программа запросит вас о них:

  ftp> mls
  (remote-files) имя_1файла_удаленной_машины ... printfile
  local-file printfile? y

mput Эта команда копирует один или более файлов из вашего каталога на удаленную машину, с которой вы связаны в данный момент. На удаленной машине файлы будут иметь те же имена. Разумеется, для выполнения этой команды вы должны иметь право на запись на удаленной машине. Вы можете задать список фалов при вызове команды, например:

   ftp> mput 1файл_вашего_каталога 2файл_вашей_машины ...

Если вы не указали имена, программа ftp вас об этом спросит:

  ftp> mput
  (local-files) имя_1файла_вашего_каталога имя_2файла ...

nmap Используйте эту команду для установки и отмены механизма преобразования имен файлов. Эта команда полезна при связи с UNIX-несовместимыми машинами в которых используется другой способ именования файлов. Например, серверов на базе Apple Macintosh. Переименовывание файлов локальной машины производится с помощью get и mget команд, а удаленной машины с помощью put и mput команд.
ntrans Используйте эту команду для включения и выключения механизма трансляции символов имени файла. Эта команда полезна при связи с UNIX-несовместимой удаленной машиной, где применяется другой способ именования файлов. Например, серверов на базе Apple Macintosh. Трансляция имен файлов локальной машины производится с помощью get и mget команд, а удаленной машины с помощью put и mput команд.
open Эта команда устанавливает связь с удаленной машиной, которая предполагается для передачи файлов. При вызове команды вы можете указать имя машины, например:

  ftp> open ftp.botik.ru

Если имя не указано, программа запросит его:

  ftp> open
  (to) имя машины

Если вы указали имя машины при вызове команды, вы можете также указать номер порта на удаленной машине. Если указан порт, то ftp откроет связь через этот порт, если он предпочтительнее того, что задается по умолчанию. Изменения порта делаются в том случае, если вас об этом поросят или это задается системным администратором. Если порт не задан, то программа его не запрашивает.
prompt Эта команда предотвращает ваш запрос к ftp о разрешении на переход между файлами в многофайловых командах, таких как mget. Эта команда подключается и отключается при повторном наборе.
put Эта команда перемещает файл из вашей машины в удаленную машину, к которой вы в данный момент подключены. Для передачи нескольких файлов одновременно используйте команду mput. Вы можете задать имя файла вашей машины и имя файла удаленной машины при вызове команды ftp, например:

  ftp> put имя_вашего_файла имя_файла_удаленной_машины

или

  ftp> put имя_вашего_файла

Разумеется, для выполнения этой команды вы должны иметь право на запись на удаленной машине. Если вы не указали имя файлов(а), то программа вас о них запросит, например:

  ftp> put
  (local-file) имя_вашего_файла
  (remote-file) имя_файла_удаленной_машины

Если вы не укажете имя файла удаленной машины, то команда put создаст файл на удаленной машине под тем же именем, что и на вашей машине.
pwd Эта команда выводит имя текущего рабочего каталога на удаленной машине, с которой вы связаны в данный момент.
bye Команда аналогична команде quit, о которой говорилось выше.
quote Команда заставляет ftp посылать параметры, которые вы вводите в машину, посылать к удаленной машине для выполнения. Параметры - это ftp команды и другие параметры. Те команды, что ftp поддерживает, могут быть отображены на экране с помощью команды remotehelp. Вы можете ввести эту команду при вызове программы ftp, например:

  ftp> quote NLST

Если вы указали только имя команды, ftp спросит вас о командной строке, которую нужно использовать, например:

  ftp> quote
  (command-line to send) NLST

Эту команду следует использовать только по совету вашего системного администратора.
recv Эта команда аналогична команде get, описанной выше.
remotehelp Эта команда запрашивает помощь ftp на удаленной машине, с которой вы связаны в данный момент. Эта информация сообщает о том какие команды поддерживает удаленная машина.
rename Эта команда переименовывает файл на удаленной машине, с которой вы связаны в текущий момент. При вызове команды вы можете использовать имена файлов, например:

  ftp> rename старое_имя_файла новое_имя_файла

Если вы использовали только имя команды, то ftp запросит имена файлов:

  ftp> rename
  (from-name) старое_имя_файла
  (to-name) новое_имя_файла

Разумеется, для выполнения этой команды вы должны иметь право на запись на удаленной машине.
rmdir Эта команда удаляет каталог на удаленной машине, с которой вы связаны в данный момент. Вы можете задать имя каталога, который следует удалить, при вызове команды, например:

  ftp> rmdir /u/mydir

или вы можете не задавать имя при вызове команды, и машина запросит вас о нем:

  ftp> rmdir
  (directory-name) /u/mydir

Эта команда не всегда поддерживается удаленной машиной. Разумеется, для ее выполнения вы должны иметь право на запись на удаленной машине.
send Эта команда аналогична команде put, описанной выше.
sendport Эта команда заставляет ftp запрещать возможность задания порта локальной машины для данных удаленной машины. Эта команда может подключаться и отключаться ее повторным набором. При вызове ftp по умолчанию задается определенный порт. Эту команду следует использовать по совету вашего системного администратора. Как правило, она нужна только при работе с каким-либо "неправильным" сервером ftp, который несовместим с вашей программой-клиентом.
status Это команда заставляет ftp изображать свой текущий статус на вашем терминале. Статус включает режимы, которые выбраны командами bell, hash, glob, port, type.
type Эта команда устанавливает в каком виде передается файл. Допустимы коды ASCII и двоичный. Эта команда аналогична командам ascii и binary. Если вы не указали тип при вызове команды, то устанавливается ASCII.
user Эта команда позволяет вам идентифицировать самого себя на удаленной машине при установлении связи. Эта авторегистрация разрешена с опцией -n при вызове ftp. В этом случае данная команда не нужна. Если автоматическая регистрация запрещена, то используйте эту команду для собственной регистрации и идентификации на удаленной машине. Удаленной машине нужно сообщить три вида информации о том, кто вы: регистрационное имя, пароль и имя ресурса. Имя пользователя требуется для всех машин, пароль и имя ресурса требуются только для некоторых систем. Вы можете ввести всю эту информацию при вызове команды user, например:

  ftp> user mike cat myaccount

Вы можете не указывать всю эту информацию при вызове команды. Тогда программа вас о ней запросит, например:

  ftp> user
  (usename) mike(имя пользователя)
  password:
  Account: myaccount(имя ресурса)

Заметьте, что ваш пароль не отображается при его наборе для защиты вашей информации. Если вы не набрали пароль или имя ресурса, то запроса о них не будет.
verbose Эта команда заставляет ftp запрещать многословный режим. Эта команда включается и выключается при повторном наборе. В многословном режиме ftp протокольные сообщения, посланные удаленной машиной появляются на вашем терминале. Кроме того, в этом режиме отображается статистика после передачи каждого файла. Если этот режим запрещен, то данная информация не изображается.
? Другое название команды help.

Примеры работы ftp.
Этот раздел иллюстрирует как можно использовать ftp. Ниже даны три примера. В этих примерах используются две машины, локальная машина с именем HERE и удаленная машина с именем THERE.

Описание 1 примера.
Этот пример показывает использование ftp для посылки и приема файлов. Команда ftp вызывается с именем главной машины и происходит автоматическая регистрация пользователя на другой машине, т.к. не используется опция -n.

Многословный режим запрещен использованием команды verbose. Пользователь затем изменяет рабочий каталог на удаленной машине на /etc каталог. Т.к. нет опции -d и есть команда verbose, многословный режим запрещен и никаких сообщений, кроме приглашение ftp, не появляется.

Пользователь, используя команду ls, получает аббревиатурный листинг каталога /etc машины THERE. команда ftp выдает три файла в каталоге /etc. Команда get passwd затем копирует файл passwd с машины THERE в машину HERE. Файл по имени passwd создается в машине HERE, если было указано имя машины.

Команда put используется, чтобы скопировать файл по имени wall из текущего рабочего каталога локальной машины (HERE) в каталог /etc удаленной машины (THERE). Этот файл копируется с тем же именем, т. к. свое имя не было указано. После окончания передачи, появляется листинг /etc, в котором уже четыре файла, включая wall, который был только что скопирован с машины HERE.

Затем используется команда bye, чтобы вернуться в оболочку операционной системы на локальной машине HERE.


  $ ftp THERE
  Connected to THERE
  220 THERE FTP server (Version 4.160 #1) ready
  Name (THERE:stevea):
  Password (THERE:stevea):
  331 Password required for stevea.
  230 User stevea logged in.
  ftp> verbose
  Verbose mode off.
  ftp> cd /etc
  ftp> ls
  passwd
  volcopy
  whodo
  ftp> get paswd
  ftp>put wall
  ftp> ls
  passwd
  volcopy
  wall
  whodo
  ftp> bye
  $
Описание 2 примера.
Этот пример иллюстрирует экранные изображения, которые можно получить, используя несколько опций ftp. После вызова ftp c именем удаленной главной машины, пользователь вызывает команду, которая позволит вернуть режим отладки. После этого команда ftp выдает сообщения на экран, что свидетельствует о разрешении данной опции. Пользователь затем заменяет рабочий каталог на удаленной машине на /etc. Т.к. присутствуют отладочный и многословный режимы, на экране будут появляться сообщения о посылке команд к удаленной машине (--> CWD/etc) и ответы, полученные с удаленной машины (250 CWD command successful - команда прошла успешно). Заметьте, что cd команда, которая имеет такую же форму, как команда изменения каталога в UNIX, посылается в виде CDW команды (изменение рабочего каталога на удаленной машине). Эта команда применяется ftp вместо cd, чтобы она работала независимо от системной команды.

Следом за cd командой пользователь ставит pwd команду, чтобы подтвердить изменение рабочего каталога. Команды ftp будут изображать на вашем экране сообщения, посылаемые между вашей (локальной) и удаленной машиной, а затем появится текущий рабочий каталог на удаленной машине. Затем пользователь набирает hash опцию, на что появляется сообщение, что данная опция разрешена. Команда get wall myfile приказывает ftp восстановить файл wall и поместить его в файл myfile в текущем рабочем каталоге на вашей машине. Команда ftp выдаст сообщения, посылаемые между локальной и удаленной машинами о начале передачи и затем печатает hash метку для каждого блока, полученной информации. После завершения передачи на экране появляется статистика, в которой время, потребовавшееся для передачи, и дата передачи файла. После получения файла пользователь закрывает связь командой close и выходит из ftp командой bye.


  $ ftp THERE
  Connected to THERE
  220 THERE FTP server (Version 4.160 #1) ready
  Name (THERE:stevea):
  Password (THERE:stevea):
  331 Password required for stevea.
  ftp> debug
  Debugging on (debug = 1)
  ftp> cd /etc
  ---> CDW /etc
  200 CDW command okay.
  ftp> pwd
  ---> PWD
  251
  ftp> hash
  Hash mark printing on (1024 bytes/hash mark).
  ftp> get wall mefile
  ---> PORT 3,20,0,2,4,51
  200 PORT command okay.
  ---> RETR wall
  150 Opening data connection for wall (3.20.0.2.1075)(24384bytes
  #######################.
  226 Transfer complete.
  24550 bytes received in 12.00 seconds (2 Kbytes/s)
  ftp> close
  ---> QUIT
  221 Goodbye.
  ftp> bye
  $