Как проверить ftp соединение из командной строки. Список FTP-команд для командной строки Windows. Скачать один файл из FTP-сервер

Как проверить ftp соединение из командной строки. Список FTP-команд для командной строки Windows. Скачать один файл из FTP-сервер

07.03.2019

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

  1. open - подключение к удаленному хосту по FTP ;
  2. cd - переход в другой каталог на сервере;
  3. bin - бинарный режим передачи данных между сервером и клиентом;
  4. put - передача файлов на FTP ;
  5. bye - завершение сеанса с сервером и выход.

Дабы освоить FTP-клиент windows и начать работать с ним, попробуем осуществить подключение к любому FTP-серверу в консольном режиме, например 213.43.125.75.

Вводим open 213.43.125.75 (это IP-адрес FTP-сервера), вместо него вводим адрес или домен нужного Вам сервера FTP, от вас потребуется ввести имя пользователя и пароль. После успешной авторизации создаём папку для размещения архивов на FTP, не долго думая, именуем ее backup (папка создаётся командой mkdir). Теперь переходим в созданный нами каталог следующей командой: cd back-up. На следующем этапе копируем файл на сервер, для чего требуется устанавливить режим передачи файлов в "бинарный" командой bin без какихлибо параметров. И теперь уже вводим put D:/back-up/back-up.zip, где параметром команды put будет полный путь к копируемому файлу. При копировании можно указавать маску в каталоге например: D:/back-up/*.zip (*.zip - все файлы с расширением "zip"). После копирования, закрываем соединение с сервером командой bye.

Чтобы наш FTP клиент делал всё автоматически, не задавая вопросов, создадим для него сценарий. Ниже приведён текстовый файл (назовем его back-up.ftp и сохраним в корень диска C:/ - для простоты использования и написания в строку запуска), содержащий в себе ряд команд для FTP клиента, которые будут автоматически выполняться при запуске FTP-клиента из командной строки.

Open 213.43.125.75 (вместо цифр - адрес нужного FTP сервера)
пользователь
пароль
cd back-up (переход в существующий каталог на FTP сервере)
bin (Режим передачи - бинарный)
put D:/back-up/back-up.zip (Путь к файлу на вашем компьютере)
bye (Завершение соединения)

В итоге должен получиться файл back-up.ftp следующего содержания:

open 213.43.125.75
пользователь
пароль
cd back-up
bin
put D:/back-up/back-up.zip

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 необходимо проследовать по пути "Пуск" -> "Выполнить" далее в строке "Открыть" набрать команду "ftp". Для того что бы получить помощь надо в командной строке клиента набрать команду "help". Описанные действия показаны на рисунке.

Некоторые FTP команды могут отличаться в зависимости от типа компьютерной платформы, но в целом это обычные UNIX команды. Вы всегда можете проверить их список набрав "help" или "?". Кроме того, в вашей системе есть справочная информация о FTP - наберите "man ftp" или "man ftpd", в manual pages содержатся исчерпывающие данные о командах, их синтаксисе.

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

Команда Описание
! [команда[аргументы]] Выход в shell - интерпретатор на локальной системе.
dir [удаленная_директория] [локальный_файл] ls [удаленная_директория] [локальный_файл] Выводит список файлов в директории либо не стандартный вывод, либо, если указано имя локального файла, в этот файл.
get [удаленный_файл] [локальный_файл] Вызывает передачу копии удаленного файла на ваш компьютер. В случае, если имя локального файла не было задано, то оно совпадает с именем удаленного файла.
mget [удаленные_файлы] Для получения нескольких файлов
hash Служит переключателем для индикации каждого полученного блока данных в 1024 байта, повышает наглядность процедуры.
cd [удаленная_директория] Сменить директорию. Существуют также "cdup" или "cd" для возврата на один или выше
lcd Меняет рабочую директорию на локальной машине (без аргумента - переход в домашнюю директорию пользователя)
bin (или binary) Переключает в режим передачи двоичных файлов
ascii Переключает в режим передачи текстовых файлов (обычно по умолчанию).
prompt Переключает интерактивную подсказку. Часто при использовании команды "mget" желательно предварительно набрать "prompt", чтобы не давать многократные подтверждения.
pwd Выводит имя удаленной рабочей директории.
mkdir [имя_директории] Создает директорию на удаленной машине
open хост [порт] Устанавливает соединение с заданным FTP сервером
put [локальный_файл] [удаленный_файл] Пересылает файл на удаленную систему. Если имя удаленного файла не указано, то оно совпадает с именем на локальной системе.
quit Синоним для "bye"
recv [удаленный_файл] [локальный_файл] Синоним для команды "get"
reget [удаленный_файл] [локальный_файл] "Дополучение" удаленного файла в том случае, когда часть его уже есть на локальной машине. Команда особенно полезна для получения больших файлов при возможных резервах соединения.
delete [удаленный_файл] Стирает удаленный файл
close Обрывает FTP сеанс с удаленным сервером и возвращает к командному интерпретатору
bye Оканчивает работу с FTP сервером и приводит к выходу и из интерпретатора.

Анонимные FTP серверы позволяют вам войти в них под именем пользователя "anonymous" или "ftp", например, наберите:

$ftp ftp.microsoft.com.

Когда появится подсказка с именем системы, напечатайте следующее:

Ftp.microsoft.com > login: anonymous ftp

На появившуюся подсказку о пароле вводите:

Password: ваш_адрес_электронной_почты

Последнее не необходимо, но является "правилом хорошего тона" при работе с FTP. После этого вы входите в систему и можете выполнять в ней различные команды в пределах интерпретатора FTP.

Вместо имени FTP сервера вы можете использовать его IP адрес, например 198.105.232.1 для того же ftp.microsoft.com.

Обычно файлы на серверах хранятся, в архивном виде (их форматы будут рассмотрены ниже) в директории /pub. Некоторые серверы допускают выполнение команды "ls-lR" (рекурсивный вывод всех файлов), либо уже содержат индексные файлы со сходным названием, хотя они могут иметь порой очень большой размер - порядка нескольких МБ.

UNIX системы имеют сходную структуру директорий, по которой можно перемещаться, пользуясь командами "cd" или "cwd". В большинстве случаев набор возможных команд один и тот же. Отличия могут быть скорее в других, например, не все анонимные FTP серверы допускают использование команд "put", "mkdir", "del" и т.п.

Важный момент: обрыв передачи файлов. Для этого используйте комбинацию клавиш: Ctrl-C, процесс будет тут же прекращен. Ctrl-D обычно закрывает соединение с удаленным хостом. Таким же образом необходимо действовать при получении сообщения о запуске команды shutdown на системе, с которой вы работаете. Тем не менее, порой локальный процесс ftp администратор системы вынужден "убивать" вручную, старайтесь не доводить его до такого шага.

FTP - важная утилита TCP/IP, предназначенная для пересылки файлов между системами. Одно из главных достоинств FTP - совместимость со множеством различных удаленных хост-систем: файлы можно пересылать между удаленными системами Win-dows 2000, Windows NT и UNIX, и даже серверами IBM, например AS/400. Для запуска утилиты FTP, имеющей текстовый интерфейс и поставляемой вместе с Windows 2000 и NT, достаточно ввести ftp в командной строке.

Перечислим 10 наиболее полезных команд FTP.

10. Help (или?). Многие команды FTP можно вводить по-разному. Например, Help и вопросительный знак (?) выполняют одну и ту же функцию. Новичкам следует начинать именно с команды Help, после ввода которой система предоставляет пользователю полный список команд FTP. Чтобы получить краткое описание команды, следует ввести? и следом - имя команды:

Ftp>? open

9. Open. Сеанс FTP обычно начинается с команды Open, устанавливающей соединение с указанным FTP-сервером (на удаленном узле должна работать служба FTP). Получив команду Open, система запрашивает ID пользователя и пароль. Многие FTP-серверы позволяют регистрироваться с анонимным ID и пустым паролем. Чтобы установить связь с компьютером с именем teca2, нужно ввести

Ftp>open teca2

8. Quit (или Bye). Команда Quit завершает любой открытый сеанс и выходит из оболочки FTP:

Ftp>quit

Чтобы закрыть открытый сеанс, не завершая работы FTP, следует использовать команду Close.

7. Pwd. Команда Pwd отображает каталог на удаленной машине, с которым в данный момент установлена связь в рамках сеанса FTP:

6. Ls. Команда Ls показывает список файлов и подкаталогов, расположенных в текущем каталоге на удаленном компьютере. Ls позволяет обращаться к удаленным файлам:

5. Cd. Если нужного файла нет в текущем каталоге удаленной системы, то с помощью команды Cd можно перейти в другой каталог. Если установлено соединение с машиной UNIX, то удаленный каталог обычно указывают через слеш с наклоном вправо (в данном случае каталог /downloads):

Ftp>cd /downloads

4. Lcd. Команда Lcd изменяет текущий каталог на локальной машине. Любые полученные с удаленной машины файлы по умолчанию будут записываться в текущий каталог. Чтобы изменить текущий локальный каталог на C: emp, следует ввести команду

Ftp>lcd C: emp

3. Bin (или Binary). По умолчанию, FTP пересылает файлы в формате ASCII, что удобно для текстовых файлов. Но для пересылки исполняемых и.zip-файлов необходимо изменить тип пересылки на двоичный с помощью команды Bin:

Чтобы вернуться в режим ASCII, следует использовать команду ASCII.

2. Put (или Send). Команда Put позволяет скопировать локальный файл в текущий каталог удаленной машины. Чтобы переслать файл с именем localfile.txt в каталог C: emp на удаленной системе, нужно ввести команду

Ftp>put C: emp localfile.txt

1. Get (или Recv). Команда Get используется для загрузки файлов из Internet (или с удаленных машин) в текущий каталог локальной машины. Чтобы получить файл с именем remotefile.txt, следует ввести команду

Ftp>get remotefile.txt

Майкл Оти - научный редактор американского журнала Windows NT Magazine, президент компании TECA, специализирующейся на разработке программного обеспечения и оказании консультационных услуг. С ним можно связаться по адресу:

7 ответов

Windows фактически не поддерживает пассивный режим.

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

Эти аргументы предназначены для отправки различных команд, а pasv - это не то, о чем думала Microsoft, когда они ее написали.

Вам нужно будет найти стороннее программное обеспечение, такое как WinSCP, которое поддерживает использование командной строки и использует это вместо родного Windows.

Клиент командной строки Windows FTP (ftp.exe) не поддерживает пассивный режим в любой версии Windows. Это делает его сегодня бесполезным из-за вездесущих брандмауэров и NAT.

Использование quote pasv не поможет. Он переключает только сервер в пассивный режим, но не клиент.

Вместо этого используйте любой другой клиент командной строки Windows FTP. Большинство других поддерживают пассивный режим.

Клиент CURL поддерживает протокол FTP и работает в пассивном режиме. Загрузите версию WITHOUT SSL, и вам не нужны библиотеки openssl.dll. Только одно приложение командной строки curl.exe.

Curl.exe -T c:\test\myfile.dat ftp://ftp.server.com/some/folder/myfile.dat --user myuser:mypwd

Другим является Putty psftp.exe, но запрос проверки ключа сервера требует трюка. Эта командная строка вводит NO для клавиши подсказки подсказки, которая не хранится в реестре только в этот раз. Вам нужен внешний script файл, но иногда он хорош, если вы копируете несколько файлов вверх и вниз.
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Echo n | psftp.exe ftp.server.com -l myuser -pw mypwd -b script.txt

script.txt(любая команда ftp может быть напечатана)

Put "C:\test\myfile.dat" "/some/folder/myfile.dat" quit

Команда quote PASV не является командой программы ftp.exe , это команда FTP-сервера, запрашивающая порт высокого порядка для передачи данных. Пассивная передача - это та, в которой данные FTP по этим портам высокого порядка, в то время как управление поддерживается в нижних портах.

Программа windows ftp.exe может использоваться для отправки команд FTP-сервера для пассивной передачи данных между двумя FTP-серверами. Стандартная установка Windows не будет и, вероятно, не должна иметь службу FTP-сервера, работающую как конечную точку для пассивных передач. Поэтому, если требуется пассивная передача со стандартным окном, требуется другое решение, кроме ftp.exe , как FTPing для localhost, поскольку одно из соединений не будет работать в большинстве оконных сред.

Вы можете осуществлять пассивную передачу FTP между двумя разными хостами (но не с двумя соединениями на одном хосте) следующим образом:

Откройте два запроса, используйте один для ftp.exe для подключения к исходному FTP-серверу, а один к ftp.exe подключитесь к вашему FTP-серверу назначения.

Теперь установите пассивное соединение между серверами, используя необработанные команды PASV и PORT. Команда quote PASV ответит IP/портом в многоточии. Используйте эти данные для команды quote PORT . Ваша пассивная ссылка теперь установлена, если брандмауэры не заблокировали один или несколько из четырех портов (2 для управления FTP, 2 для данных FTP)

Затем начните прием данных с помощью команды quote STOR на принимающий FTP-сервер, затем отправьте управляющую команду quote RETR на исходный FTP-сервер.

так для меня:

Client 1 > ftp.exe server1 ftp> quote PASV 227 Entering Passive Mode (10,0,3,1,54,161) client 2 > ftp.exe server2 ftp> quote PORT 10,0,3,1,54,54,161 ftp> quote STOR myFile client 1 ftp> quote RETR myFile

Cavet: я подключаюсь к некоторым старым FTP-серверам YMMV

Это обычная проблема. когда мы запускаем ftp-соединение, только внешний ip открывает порт для соединения pasv. но ip за NAT не открывает соединение, поэтому пассивное соединение терпит неудачу с командой PASV

нам нужно указать, что при открытии соединения так открытое соединение с



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