Команда FTP реализует обмен файлами с FTP сервером в командной строке Windows. Утилита ftp.exe входит в стандартный дистрибутив всех версий операционных систем семейства Windows и позволяет выполнять обмен с сервером как в командном, так и в интерактивном режиме.
1. Описание команды FTP.
1.1. Формат командной строки:
C:\ FTP [-v] [-d] [-i] [-n] [-g] [-s:имя_файла] [-a] [-A] [-x:sendbuffer] [-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [узел]
1.2. Параметры:
- -v — Отключение вывода на экран ответов с удаленного сервера.
- -n — Отключение автоматического входа при начальном подключении.
- -I — Отключение интерактивных запросов при передаче нескольких файлов.
- -d — Включение отладочного режима.
- -g — Отключение глобализации имен файлов (см. команду GLOB).
- -s:имя_файла — Задание текстового файла, содержащего команды FTP, которые будут выполняться автоматически при запуске FTP.
- -a — Использование локального интерфейса для привязки соединения.
- -A — Анонимное подключение к серверу.
- -x:send sockbuf — Переопределение стандартного размера буфера SO_SNDBUF (8192).
- -r:recv sockbuf — Переопределение стандартного размера буфера SO_RCVBUF (8192).
- -b:async count — Переопределение стандартного размера счетчика async (3)
- -w:windowsize — Переопределение стандартного размера буфера передачи (65535).
- узел — Задание имени или адреса IP удаленного узла, к которому необходимо выполнить подключение.
1.3. Примечания:
— команды mget и mput принимают параметры y/n/q как YES/NO/QUIT.
— для прекращения выполнения команд нажмите комбинацию клавиш CTRL+C.
1.4. При запуске без параметров, FTP переходит в интерактивный режим, ожидая ввода команд пользователем. На экране отображается приглашение — ftp > .
Для получения списка доступных команд можно ввести знак вопроса или команду
ftp> help
или
ftp> ?
1.5. Набор команд:
! ? append ascii bell binary bye cd close | literal debug dir disconnect get glob hash help lcd | ls mdelete mdir mget mkdir mls mput open prompt | send put pwd quit quote recv remotehelp rename rmdir | status trace type user verbose |
Подсказку по конкретной команде можно получить введя знак вопроса или help и имя команды:
ftp> ? connect ftp> help connect
1.6. Список команд FTP клиента Windows:
- ! — Временный переход из среды FTP в командную строку Windows (CMD.EXE) . Для возврата в FTP используется команда EXIT
- append добавление данных передаваемого файла в конец существующего.
- ascii — установка режима передачи файлов в формате ascii (текстовый режим)
- bell — выдача звукового сигнала по завершении команды .
- binary — установка режима передачи файлов в двоичном формате
- bye — завершение сеанса FTP и выход из программы.
- cd — изменение текущего каталога на удаленном компьютере
- close — завершение сеанса FTP ( закрытие соединения, открытого командой open)
- delete — удаление указанного файла на удаленном компьютере
- debug — переход в режим отладки
- dir — вывод содержимого каталога удаленного компьютера
- disconnect — завершение сеанса ftp. Отключение от сервера FTP без завершения программы.
- get — прием файла от сервера FTP
- glob — Переключение метасимвольного расширения имен локальных файлов. По умолчанию этот режим включен и позволяет использовать символы * и ? в шаблонах имен файлов.
- hash — переключение режима вывода метки хэширования для каждого переданного буфера
- help — вывод справочной информации по командам FTP
- lcd — смена рабочего каталога локального компьютера
- literal — отправка произвольной строки символов в качестве команды ftp
- ls — вывод содержимого каталога удаленного компьютера
- mdelete — удаление нескольких файлов
- mdir — вывод содержимого нескольких каталогов сервера FTP
- mget — прием нескольких файлов от сервера FTP
- mkdir — создание каталога на сервере FTP
- mls — вывод содержимого нескольких каталогов удаленного компьютера
- mput — отправка нескольких файлов на сервер FTP open — открыть соединение (подключиться) к серверу FTP
- prompt — изменение строки в приглашения к вводу команд в интерактивном режиме.
- put — передача одного файла
- pwd — отобразить имя текущего рабочего каталога на сервере FTP
- quit — завершение сеанса и выход из программы
- quote — отправка произвольной команды серверу FTP
- recv — прием одиночного файла
- remotehelp — получение справки от сервера FTP
- rename — переименование файла
- rmdir — удаление каталога на сервере
- send — передача одиночного файла
- status — отображение текущего состояния сеанса — к какому серверу выполнено подключение, тип передаваемых данных, состояние режимов, изменяемых командами FTP
- trace — переключение режима трассировки
- type — установка типа передачи файлов
- user — изменение имени пользователя в сеансе обмена с сервером FTP
- verbose — переключение режима детализации при выводе сообщений
Как видно из списка перечисленных команд, стандартный клиент FTP в операционных системах Windows поддерживает далеко не полный перечень стандартных ftp-команд и, что самое неприятное, он не поддерживает команду переключения в пассивный режим ( passv ) обмена с сервером FTP, что делает его непригодным для обмена данными с серверами FTP, подключение к которым выполняется с использованием технологии трансляции сетевых адресов NAT. Другими словами, для обмена файлами с внешними, по отношению к подсети клиента, серверами, стандартный FTP-клиент не подходит. Это касается всех версий Windows, включая и Windows 10. Именно этот факт предопределяет область использования утилиты ftp.exe — только в локальных сетях, где возможно прямое TCP-соединение между клиентом и сервером.
2. Пример сессии с использованием клиента FTP Windows:
open 192.168.1.1 — открыть соединение с сервером 192.168.1.1
user admin — использовать имя пользователя admin при подключении к серверу. В ответ на эту команду сервера запросит пароль.
adminpass — ввод пароля для пользователя admin
ls — отобразить список файлов и папок в удаленном каталоге
get myfile.txt — принять файл myfile.txt из удаленного каталога в текущий локальный каталог.
lcd C:\files — сменить текущий локальный каталог.
get myfile.txt — принять файл myfile.txt из удаленного каталога в текущий локальный каталог ( C:\files ) .
При использовании FTP клиента Windows в командных файлах, часто применяется запуск программы в режиме управления командами FTP, записанными в текстовый файл. В файл ftpcomm.txt записывается перечень команд, в таком же порядке, в каком они вводились бы в интерактивном режиме:
C:> ftp -s:ftpcomm.txt
Например, для приема файла binfile.bin в каталог C:\temp:
ftp> open ftp> 192.168.1.1 ftp> admin ftp> adminpass ftp> lcd C:\temp ftp> binary ftp> get binfile.bin ftp> bye