Стандартная утилита Windows "FTP-клиент" из командной строки (CMD) - для резервного копирования или скачивания файлов без вашего участия (автоматически). Скачивать и закачивать файлы по FTP используя консоль Подключение к ftp из командной строки

Стандартная утилита Windows "FTP-клиент" из командной строки (CMD) - для резервного копирования или скачивания файлов без вашего участия (автоматически). Скачивать и закачивать файлы по FTP используя консоль Подключение к ftp из командной строки

09.10.2021

FTP (File Transfer Protocol - протокол передачи файлов) — это популярный сетевой протокол, который используется для копирования файлов с одного компьютера на другой в локальной сети, либо в сети Интернет. FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP, и даже до TCP/IP, в 1971 году.

Протокол FTP уязвим, то есть FTP не может зашифровать свой трафик, все передачи — открытый текст, поэтому имена пользователей, пароли, команды и данные могут быть прочитаны кем угодно, способным перехватить пакет по сети. Для безопасной передачи данных, используется протокол SFTP (Secure File Transfer Protocol). В отличие от стандартного FTP он шифрует и команды, и данные, предохраняя пароли и конфиденциальную информацию от открытой передачи через сеть. По функциональности SFTP похож на FTP, но так как он использует другой протокол, клиенты стандартного FTP не могут связаться с SFTP-сервером и наоборот. Далее рассмотрим основные команды для работы с FTP программой.

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

FTP соединение

Для начала фтп соединения достаточно ввести команду ftp <сервер> например:

ftp test.hostingthutor.com

После нажатия клавиши enter вывод команды будет следующим:

Connected to test..55.5.11).
220 test..
Name (test.сайт:ftpuser):

Другой способ для соединения - это запуск ftp из консоли, а после этого соединение с ftp-сервером с помощью команды open :

ftp
ftp> test.сайт

Кроме того, возможно соединится и по ip:

ftp 114.55.5.11

Или с таким обращением ftp Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script , то есть:

ftp Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script
230 User ftpuser logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

Из сообщения видно, что для передачи файлов используется двоичный (бинарный) тип передачи. Двоичный режим передачи файлов - это передача файлов в том виде, в котором они хранятся на FTP сервере. Режим Ascii (текстовый) используется для передачи только текстовых файлов. Вы можете вводить команды ascii или binary для переключения между режимами передачи. Бинарный режим (binary) необходимо использовать для всех нетекстовых типов файлов - изображения, архивы, программы и т.д.

Итак, перейдем к командам для навигации и перехода по каталогам ftp-сервера:

pwd - команда покажет текущую директорию на ftp сервер:

ftp> pwd
257 "/" is the current directory

ls - команда покажет список файлов и каталогов в текущей директории:

ftp> ls
227 Entering Passive Mode.
150 Opening ASCII mode data connection for file list
-rw-r--r-- 1 ftpuser ftpuser 3034978 Jun 31 19:02 file1.tar.gz
-rw-r--r-- 1 ftpuser ftpuser 30842294 Jul 31 20:08 file2.tar.gz
-rw-r--r-- 1 ftpuser ftpuser 67798316 Jul 31 19:46 file3.tar.gz
-rw-r--r-- 1 ftpuser ftpuser 6001252 Jan 17 12:02 file4.zip
-rw-r--r-- 1 ftpuser ftpuser 31386394 Jan 17 11:28 file5.tar.gz
drwxr-xr-x 2 ftpuser ftpuser 4 Jan 17 20:23 www
-rw-r--r-- 1 ftpuser ftpuser 48546694 Jan 17 11:33 file6.zip
226 Transfer complete

cd <имядиректории> - команда для перехода в нужную директорию:

ftp> cd www
250 CWD command successful

Проверяем командой pwd :

ftp> pwd
257 "/www" is the current directory

mkdir <имя директории> - создание новой директории (каталога):

ftp> mkdir tmp
257 "/tmp" - Directory successfully created

rmdir <имя директории> - удаление директории (каталога):

ftp> rmdir tmp
250 RMD command successful

Удаление файлов на ftp сервере

delete <имяфайла> - удаляет файл на удаленном ftp сервере:

ftp> delete test1.sql
250 DELE command successful

Скачивание файлов с ftp

get - скачать файл на локальную машину. get fileName или get fileName newFileName

ftp> get file.zip
local: file.zip remote: file.zip
227 Entering Passive Mode.

226 Transfer complete
486694 bytes received in 0.229 secs (6.5e+04 Kbytes/sec)

Скачиваем file.zip на локальную машину как file2.zip:

ftp> get file.zip file2.zip
local: file2.zip remote: file.zip
227 Entering Passive Mode .
150 Opening BINARY mode data connection for file.zip (486694 bytes)
226 Transfer complete
486694 bytes received in 0.306 secs (9.4e+04 Kbytes/sec)

С помощью команды get с удаленного ftp сервера файлы копируются в текущую локальную директорию. Чтобы изменить текущую локальную директорию нужно использовать команду lcd :

lcd <путь> - изменить текущую директорию на локальной машине:

ftp> lcd /root
Local directory now /root

Чтобы скачать несколько файлов с удаленного ftp сервера на локальную машину можно использовать команду mget .

ftp> mget *.sql
mget test2.sql? y
227 Entering Passive Mode.
(23957080 bytes)
226 Transfer complete
23957080 bytes received in 0.233 secs (1e+05 Kbytes/sec)
mget test1.sql? y
227 Entering Passive Mode.
(11873185 bytes)
226 Transfer complete
11873185 bytes received in 0.135 secs (8.6e+04 Kbytes/sec)

Скачивание каждого файла необходимо подтверждать (да / нет) y /n .

Еще один вариант скачивания mget :

ftp> mget test1.sql test2.sql
mget test1.sql? y
227 Entering Passive Mode.

226 Transfer complete
11873185 bytes received in 0.101 secs (1.1e+05 Kbytes/sec)
mget test2.sql? y
227 Entering Passive Mode.

226 Transfer complete
23957080 bytes received in 0.204 secs (1.1e+05 Kbytes/sec)

Загрузка файла на ftp сервер

put <имяфайла> - команда для загрузки одного файла на ftp сервер.

ftp> put test1.sql
local: test1.sql remote: test1.sql
227 Entering Passive Mode.
150 Opening BINARY mode data connection for test1.sql
226 Transfer complete
11873185 bytes sent in 0.129 secs (9e+04 Kbytes/sec)

Для загрузки нескольких файлов сразу можно использовать команду mput :

ftp> mput test1.sql test2.sql
mput test1.sql? y
227 Entering Passive Mode.
150 Opening BINARY mode data connection for test1.sql
226 Transfer complete
11873185 bytes sent in 0.0964 secs (1.2e+05 Kbytes/sec)
mput test2.sql? y
227 Entering Passive Mode.
150 Opening BINARY mode data connection for test2.sql
226 Transfer complete
23957080 bytes sent in 0.354 secs (6.6e+04 Kbytes/sec)

Загрузку каждого файла необходимо подтверждать y / n (да / нет).

Еще один вариант команды mput :

ftp> mput *.sql
mput test1.sql? y
227 Entering Passive Mode.
150 Opening BINARY mode data connection for test1.sql
226 Transfer complete
11873185 bytes sent in 0.0985 secs (1.2e+05 Kbytes/sec)
mput test2.sql? y
227 Entering Passive Mode.
150 Opening BINARY mode data connection for test2.sql
226 Transfer complete
23957080 bytes sent in 0.2 secs (1.2e+05 Kbytes/sec)

Если на фтп загружаются файлы большого размера, то неплохо было бы наблюдать за ходом загрузки. Для этого можно использоваться команды hash и tick .

hash - команда после которой ftp будет печатать символ «#» каждые 1024 байт данных:

ftp> hash
Hash mark printing on (1024 bytes/hash mark).
put file2.tar.gaz
##########################
226 Transfer complete
785888111 bytes sent in 6.94 secs (1.1e+05 Kbytes/sec)

tick - команда будет отображать счетчик байтов:

ftp> tick
Hash mark printing off.
Tick counter printing on (10240 bytes/tick increment).
ftp> put file2.tar.gz
local: file2.tar.gz remote: file2.tar.gz
227 Entering Passive Mode.
150 Opening BINARY mode data connection for file2.tar.gz
Bytes transferred: 912706618 -> счетчик
226 Transfer complete
912706618 bytes sent in 8.08 secs (1.1e+05 Kbytes/sec)

Вот и весь базовый набор команд для работы с ftp в консоле. Для просмотра списка доступных команл на данном FTP сервере можно использовать команду help :

ftp> help
Commands may be abbreviated. Commands are:

Debug mdir sendport site
$ dir mget put size
account disconnect mkdir pwd status
append exit mls quit struct
ascii form mode quote system
bell get modtime recv sunique
binary glob mput reget tenex
bye hash newer rstatus tick
case help nmap rhelp trace
cd idle nlist rename type
cdup image ntrans reset user
chmod lcd open restart umask
close ls prompt rmdir verbose
cr macdef passive runique ?
delete mdelete proxy send

Также, можно получить короткую справку по каждой команде help <команда> :

ftp> help status
status show current status

ftp> help quit
quit terminate ftp session and exit

ftp> help bye
bye terminate ftp session and exit

И в завершение, две команды, которые выше quit или bye для закрытия ftp-сессии и выхода:

ftp> quit
221 Goodbye.

Подробную информацию с описанием команд можно получить с помощью man ftp в командной строке.

# man ftp
Formatting page, please wait...
FTP(1) BSD General Commands Manual FTP(1)

NAME
ftp - Internet file transfer program

SYNOPSIS
ftp [-Apinegvd]
pftp [-Apinegvd]
................
...............

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

СИНТАКСИС

Ftp [-v] [-d] [-i] [-n] [-U] [-p] [-g]

ОПИСАНИЕ
Программа 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 может предоставить список поддерживаемых команд. Для получения такой информации нужно использовать команду после установления связи с удаленной машиной.

Описание команд 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 $

FTP (File Transfer Protocol) является наиболее популярным протоколом для передачи файлов (скачиваать и загружать) из одной системы в другую систему. Это обеспечивает быстрыйспособ передачи файлов. Есть много доступных приложений на Linux и Windows такие как VSFTPD, ProFTPD для Linux, FileZilla Server для windows и macOS.

Есть различные способы для подключения к FTP-серверу использую графическую среду, но системный администратор должен знать силу командной строки. И в данной теме «Скачивать и закачивать файлы по FTP используя консоль» я расскажу как можно работать с командной строкой для передачи/получения данных.

1. Подключение к FTP-серверу с помощью командной строки

Для подключения к любому серверу с помошью командной строки служит терминал.

$ ftp ftp.сайт

2. Загрузить файл на FTP-сервер

Чтобы загрузить файл на сервер используют FTP put. Во-первых нужно перейти в нужную папку на FTP сервере для загрузки файла и использовать следующую команду.

Ftp> cd uploads ftp> put /home/captain/my_file.txt

3. Скачать один файл из FTP-сервер

Чтобы скачать файл из FTP-сервера, мы используем команду get. Используя эту команду мы можем загрузить один файл. Чтобы скачать какой-либо файл с сервера FTP, сперва войдите на FTP-сервер, потом перейдите в каталог и использования следующую команду, чтобы скачать любой файл:

Ftp> get my_file.txt

4. Загрузить несколько файлов на FTP-сервер

Чтобы загрузить несколько файлов на FTP-сервере мы используем MPUT команду. Мы можем указать символ шаблона для загрузки нескольких файлов на сервер одновременно. Во-первых перейдите к нужной папке на FTP сервере для загрузки файла и используйте следующую команду. Он будет загрузить все файлы с расширением.txt в каталог /home/captain для закачанных файлов на FTP-сервере.

Ftp> cd uploads ftp> lcd /home/captain/ ftp> put *.txt

5. Скачать несколько файлов с FTP-сервера

Чтобы скачать несколько файлов с FTP-сервера, мы используем MGET команду. Используя эту команду можно загружать файлы.

Ftp> mget *.txt

Команды.

!
Выйти с оболочки shell

?
Расспечатать помошь о локальной информации

append
Добавьте в файл

ascii
Установить тип передачи ASCII. Используйте это, чтобы передать текстовые файлы (HTM-файлы).

bell
Звуковой сигнал при завершении команды.

binary
Установите двоичный тип передачи. Используйте это для передачи двоичных файлов (XE-файлов и графики).

bye

cd
Изменить удаленный рабочий каталог (использование «..», чтобы перейти к родителю).

close
Завершить сеанс FTP.

delete
Удалить удаленный файл.

debug
Переключить режим отладки.

dir
Перечислите (показать) содержимое удаленного каталога.

disconnect
Завершить сеанс FTP.

get
Получить файл (смотрите также mget).

glob
Переключить расширение метасимвол из локального имени файлов.

hash
Переключить печать ‘#’ для каждого переданного буфера.

help
Показать список команд.

lcd
Изменить локальный рабочий каталог.

literal
Отправить произвольную команду FTP.

ls
Показать содержимое удаленного каталога.

mdelete
Удаление нескольких файлов.

mdir

mget
Получить несколько файлов (смотрите также get)

mkdir
Создайте каталог на удаленной машине.

mls
Список содержимого нескольких удаленных каталогов.

mput
Отправить несколько файлов (смотрите также put).

open
Подключение к удаленному FTP.

prompt
Грубое интерактивное приглашение на нескольких команд (это переключение)

put
Отправить один файл (смотрите также mput).

pwd
Распечатать рабочую папку (где ты находишся сейчас) на удаленной машине.

quit
Завершить сеанс подключения и работу.

quote
Отправить произвольную команду FTP. Вы можете просмотреть список raw команд FTP на www.nsftools.com/tips/RawFTP.htm

recv
Receive file

remotehelp
Get help from remote server

rename
Получить файл.

rmdir
Удалить каталог на удаленной машине.

send
Отправить один файл.

status
Показать текущее состояние.

trace
Переключить трассировку пакетов.

type
Установить тип файла передачи

user
Отправить новую информацию пользователя.

verbose
Переключить подробный режим.

Тема «Скачивать и закачивать файлы по FTP используя консоль» завершена.

Чтобы подключиться к серверу FTP, необязательно использовать какие-либо посторонние программы — это можно сделать и при помощи стандартных возможностей Windows. Для этого можно воспользоваться командной строкой CMD. Но чтобы управлять сервером через стандартные возможности операционной системы, вам придется изучить доступные команды, так как визуального интерфейса у CMD нет. В данной статье вы узнаете основные команды FTP и как применять их на практике.

Почему лучше скачать клиент, чем использовать CMD

Если бы командная строка CMD позволяла выполнять все доступные операции на серверах FTP, то, возможно, в клиентах не было бы нужды. Но реальность такова, что строка CMD весьма ограничена в плане управления сервером. Потому все-таки лучше найдите возможность, и скачайте к себе на компьютер утилиту для управления сервером по FTP. Например, загрузите к себе на ПК программу-клиент FileZilla — ее можно скачать бесплатно с официального сайта разработчиков. На установку много времени не уйдет. А чтобы подключиться к серверу, вам нужно будет всего-навсего ввести логин, пароль и имя хоста в нужную строку. Через CMD это делать гораздо сложнее.

Конкретный недостаток строки CMD в том, что вы даже не сможете перейти в пассивный режим во время пребывания на сервере. А без такого режима у вас не получится обмениваться файлами с серверами FTP, которые работают через NAT.

По сути, это очень большой недочет CMD. Потому смиритесь с тем, что командная строка Windows подойдет только для манипуляций внутри файловой системы без обмена данными. Хотя для тех, кто использует сервер FTP для рутинной однообразной работы, командная строка может показаться весьма удобной. Но лучше попробуйте и клиент, и CMD, чтобы делать какие-либо выводы.

Какие есть команды для управления FTP в командной строке CMD

Для начала запустите командную строку. Сделать это можно при помощи поиска в «Пуске» — найдите файл cmd.exe и откройте его, после чего строка будет запущена.

Чтобы подключиться к серверу, вам нужно воспользоваться командой OPEN. После этой команды необходимо ввести IP-адрес или имя хоста, с которым вы хотите настроить соединение. Уже после введения этого запроса вы сможете залогиниться на сервере. Сделать это можно при помощи команды USER, которая делает запрос на аутентификацию через введенный логин. После вам нужно ввести команду PASS, которая означает пароль. Когда введете пароль, и нажмете «Ввод», вы будете авторизированы на сервере.

В целом, командная строка подходит только для того, чтобы «серфить» по серверу, перемещать файлы и т. п. Для начала вам нужно будет увидеть файлы, которые есть на сервере. Для этого воспользуйтесь командой LS. Поскольку курсора в командной строке нет, вам нужно выделять каталог или файл при помощи специальных команд. Используйте для этого строку CD или LCD — первая нужна для смены текущего объекта на удаленном компьютере, а вторая — для локального, то есть для вашего ПК.

Хоть вы и не сможете загружать на сервер FTP свои файлы через CMD, скачивать данные к себе на компьютер возможно. Для этого используйте команду GET. Сначала пропишите команду GET с названием файла, а потом укажите какой каталог на вашем компьютере является текущим, чтобы сервер передал данные именно в ту папку.

Указанные команды используют чаще всего. То есть большинство пользователей управляют сервером через CMD, чтобы быстро скачивать файлы, не устанавливая предварительно клиент. Но вы можете пойти гораздо дальше, и использовать другие команды на сервере при помощи строки CMD. Например, вы можете добавить сигнальное оповещение о завершении команды на сервере при помощи строки BELL.

Если вы хотите завершить сеанс и выйти из командной строки и сервера, то пропишите BYE. А для прерывания управляющего соединения только на сервере, чтобы вы остались внутри командной строки, напишите CLOSE. При этом файлы, которые вы загружаете на ПК с сервера будут продолжать скачиваться и уже после окончания загрузки сеанс будет полностью прикрыт.

При помощи CMD вы с легкостью сможете манипулировать каталогами на сервере. Например, чтобы удалить указанный каталог, используйте команду DELETE. А чтобы на экране появился перечень файлов определенной папки, пропишите DIR и путь к каталогу. Если вы хотите удалить не одну папку или файл, а сразу несколько, то воспользуйтесь командой MDELETE, то есть мульти-удаление. Точно так же приставку «m» можно использовать и для других команд, чтобы можно объединить несколько действий в одно. Так, для отображения списка файлов сразу нескольких каталогов пропишите MDIR, а для загрузки с сервера пачки данных используйте MGET. Но не путайте мультикоманду с одиночной MKDIR — она нужна для того, чтобы сгенерировать каталог на сервере.

Есть вероятность, что ваш FTP-сервер работает без NAT-технологии, потому пассивный режим клиента и не понадобится. В таком случае у вас получится загружать определенные файлы на хост. Используйте для этого команду MPUT для выгрузки нескольких файлов, и PUT, если вы хотите отправить только один.

Еще одна популярная команда, которая, скорее всего, пригодится и вам — это RENAME. Нужна команда для переименования файлов. Она будет полезна для тех, кто использует сервер в качестве хранилища для данных сайта. Также вам понадобится команда PWD, которая определяет текущую папку на удаленном сервере FTP, а не у вас на компьютере, как это делает строка LCD.

Приведенные команды — это неполный список функций, которые вы можете использовать в FTP. Есть и другие команды. И вы можете узнать о них прямо в командной строке, если введете запрос HELP. После этого появится справочник со всеми доступными командами CMD, которые можно использовать в FTP. Только учтите, что в этот момент вы должны быть подключены к серверу, иначе Windows выдаст вам другой справочник. А если хотите запросить помощь у самого сервера, то пропишите REMOTEHELP.

Разумеется, управление сервером командами — это каменный век. Потому лучше не теряйте время, загружайте на компьютер нормальный FTP-клиент и используйте сервер на максимум, а не частично. Но практика в командной строке CMD еще никому не мешала!

Часто требуется автоматизировать процессы скачивания, загрузки и удаления файлов c FTP-сервера. Например, при работе с распределенными базами данных 1С или для сохранения резервных копий. Но не все знают, что эти процедуры можно выполнять из командной строки, не прибегая к дополнительному программному обеспечению, то есть средствам Windows. Ниже я приведу синтаксис команд для работы с FTP, а также примеры bat-файлов для этих операций.

1. Команда ftp

Для обмена файлами с FTP-сервером используется команда ftp, вот ее синтаксис:

FTP [-v] [-d] [-i] [-n] [-g] [-s:имя_файла] [-a] [-A] [-x:sendbuffer]
[-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [узел]

-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 удаленного узла,
к которому необходимо выполнить подключение.

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

!
Временный переход в оболочку.

append
Добавление в файл.

ascii
Установка режима передачи файлов в формате ascii.

bell
Выдача звукового сигнала по завершении команды

binary
Установка режима передачи файлов в двоичном формате.

bye
Завершение сеанса ftp и выход.

cd <удаленный_каталог>
Изменение рабочего каталога на удаленном компьютере, где:
<удаленный_каталог> — имя каталога, который станет рабочим.

close
Завершение сеанса ftp.

debug
Переключение режима отладки.

delete <удаленный_файл>
Удаление файла на удаленном компьютере, где:
<удаленный_файл> — имя файла для удаления.

dir [<удаленный_каталог> ] [<локальный_файл> ]
Вывод содержимого каталога удаленного компьютера, где:
<удаленный_каталог>
<локальный_файл>

disconnect
Завершение сеанса ftp.

get <удаленный_файл> [<локальный_файл> ]
Получение файла, где:
<удаленный_файл>
<локальный_файл> — имя файла на локальном компьютере.

glob
Переключение метасимвольного расширения имен локальных файлов.

hash
Переключение вывода «#» для каждого переданного блока данных.

help [<команда> ]
Вывод справочных сведений для команды ftp, где:
<команда> — Команда, описание которой будет выведено, если не задана, произойдет вывод всех команд.

lcd [<локальный_каталог> ]
Изменение локального каталога рабочего компьютера, где:
<локальный_каталог> — Имя нового локального каталога, если не задан то будет использоваться имя текущего каталога.

literal <команда_1> … <команда_n>

<команда_n> — команды для отправки;

ls [<удаленный_каталог> ] [<локальный_файл> ]
Вывод сокращенного содержимого каталога удаленного компьютера, где:
<удаленный_каталог> — каталог, содержимое которого будет выведено, если не задан, используется текущий каталог;
<локальный_файл> — задает локальный файл, для сохранения в список, если не задан, список выводится на экран.

mdelete <удаленный_файл_1 > … <удаленный_файл_n >
Удаление нескольких файлов на удаленном компьютере, где:
<удаленный_файл_n> — имена файлов для удаления.

mdir <удаленный_каталог_1 > … <удаленный_каталог_n > <локальный_файл >
Вывод содержимого нескольких каталогов удаленного компьютера, где:
<удаленный_каталог_n> — каталог, содержимое которого будет выведено;
<локальный_файл> — задает локальный файл, для сохранения в список, если не задан, список выводится на экран.

mget <удаленный_файл_1> <удаленный_файл_n>
Получение нескольких файлов, где:
<удаленный_файл_n> — удаленный файл для копирования.

mkdir <удаленный_каталог>
Создание каталога на удаленном компьютере, где:
<удаленный_каталог> — имя удаленного каталога для создания.

mls <удаленный_каталог_1> … <удаленный_каталог_n> <локальный_файл>
Вывод сокращенного содержимого нескольких каталогов удаленного компьютера, где:
<удаленный_каталог_n> — каталог, содержимое которого будет выведено, если не задан, используется текущий каталог;
<локальный_файл> — задает локальный файл, для сохранения в список.

mput <локальный_файл_1> … <локальный_файл_n>
Отправка нескольких файлов, где:
<локальный_файл_n> — имя локальных файлов, которые будут скопированы.

prompt
Переключение интерактивной подсказки для составных команд.

put <локальный_файл> [<удаленный_файл> ]
Отправка одного файла, где:
<локальный_файл >
<удаленный_файл>

pwd
Вывод рабочего каталога удаленного компьютера.

quit
Завершение сеанса ftp и выход в командную строку.

quote <команда>
Отправка произвольной команды ftp, где:
<команда> — команда для отправки.

recv <удаленный_файл> [<локальный_файл> ]
Получение файла с использованием текущих настроек типов файлов, где:
<удаленный_файл> — удаленный файл для копирования;
<локальный_файл > — имя файла на локальном компьютере.

remotehelp [<команда> ]
Получение справочных сведений о командах удаленной системы, где:
<команда > — команда удаленной системы, если не задан, то выводится список всех команд.

rename <имя_файла> <новое_имя_файла>
Переименование удаленного файла, где:
<имя_файла > — имя файла для переименования;
<новое_имя_файла > — новое имя файла.

rmdir <имя_каталога>
Удаление каталога на удаленном компьютере, где:
<имя_каталога > — имя каталога для удаления.

send <локальный_файл> [<удаленный_файл> ]
Копирование одного файла с использованием текущих настроек типов файлов, где:
<локальный_файл > — имя локального файл для копирования;
<удаленный_файл> — имя файла на удаленном компьютере.

status
Отражение текущего состояния подключения ftp.

trace
Переключение трассировки пакетов.

type [<имя_типа> ]
Установка типа передачи файлов, где:
<имя_типа > — тип передачи файлов, если не указан будет выведен текущий тип передачи файлов.

user <имя_пользователя> [<пароль> ] [<учетная_запись> ]
Отправка сведений для подключения к удаленному компьютеру, где:
<имя_пользователя > — имя пользователя для подключения к удаленному компьютеру;
<пароль > — пароль, для указанного имени пользователя, если не указан, но требуется для подключения, команда ftp запросит его у пользователя;
<учетная_запись > — учетная запись для подключения к удаленному компьютеру, если не указана, но требуется для подключения, команда ftp запросит ее у пользователя;

verbose
Переключение режима вывода сообщений.


Рассмотрим небольшой пример.

Для начала напишем «батник», который будет загружать на сервер сайт файл file_data.dat из «С:\example » . Алгоритм работы bat-файла будет такой:

  • Создаем файл transport.txt с последовательностью операторов ftp;
  • Выполняем команду ftp, указав в качестве параметров созданный файл;
  • Удаляем transport.txt.

В данном примере имя файла и директорий жестко прописаны в файле. Это не всегда удобно. Доработаем bat-файл таким образом, чтобы данные для загрузки он получал в качестве параметров, а также вынесем все изменяемые значения в переменные файла. Получим следующий код ():

Соответственно, чтобы скопировать файл file_data.dat из «C:\example » на FTP-сервер в «Temp\Backup » , потребуется запустить этот «батник» указав в качестве параметров имя файла, локальный и удаленный каталоги.

Аналогичным образом можно написать bat-файлы для и на FTP-сервере, а также исполняющий файл с произвольным набором инструкций.

Помогла ли Вам данная статья?



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows