Ftp переместить файл в папку

Обновлено: 05.07.2024

FTP - это один из самых популярных способов передачи файлов на сервер серди веб-мастеров и пользователей. File Transfer Protocol - довольно давняя технология, которая применялась для передачи файлов между компьютерами еще на заре зарождения интернета. Но она до сих пор сохранила свою популярность из-за простоты и надежности.

В одной из предыдущих статей мы писали о том, как выполняется настройка FTP на Ubuntu 16.04, в этой статье рассмотрим как работает передача файлов по FTP, рассмотрим как передать файлы с помощью терминала или в графическом интерфейсе.

Как работает FTP?

Протокол FTP представляет из себя набор команд, которые мы можем передавать на сервер обычным текстом для аутентификации, просмотра содержимого каталогов, перемещения по каталогам, отправки и скачивания файлов. Все команды передаются в открытом виде, в том числе и пароль, поэтому использование FTP очень небезопасно, и лучше применять передачу файлов scp или защищенный протокол sFTP, который мы рассмотрим ниже.

Важно заметить, что для передачи файлов и обработки команд используются два разных соединения. Команды передаются на порт 21, а когда нужно передать файл, сервер FTP сообщает на какой порт нужно начать отправлять информацию. Не будем вдаваться в подробности, скажу только, что существует два режима передачи файлов. Это активный, когда сервер подключается к компьютеру и начинает считывать файл и пассивный, когда компьютер передает файл на сервер. Сейчас в большинстве случаев применяется пассивный режим, потому что большинство пользователей используют NAT, что не позволяет серверу самому подключаться к портам клиента.

А теперь перейдем ближе к практике и рассмотрим как выполняется передача файлов по FTP.

Передача файлов по FTP через терминал

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

$ ftp опции адрес_сервера

Опций у утилиты всего несколько, но нам нужно их рассмотреть, потому что они могут быть вам очень полезны:

  • -A - использовать активный режим во время передачи файлов;
  • -p - использовать пассивный режим, используется по умолчанию;
  • -i - отключать интерактивный режим во время передачи файлов;
  • -n - попытаться использовать автоматический вход;
  • -e - отключить историю команд;
  • -v - максимально подробный вывод;
  • -d - включить режим отладки.

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

Это далеко не все команды, которые вы можете использовать для передачи файлов, но здесь перечислено все самое основное, и вам их точно хватит для решения простых задач.

Сначала подключаемся к нашему серверу, команде нужно передать адрес сервера:


Затем авторизуемся на сервере, нужно передать логин и пароль:


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

ftp> cd FTP
ftp> ls
ftp> pwd


Перейдем в папку documents на удаленном сервере и посмотрим ее содержимое:

ftp> cd documents
ftp> ls


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

ftp> get document2.odt


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


Загрузка файлов по FTP на сервер выполняется с помощью команды put, причем, здесь, как и в предыдущей команде можно задать имя создаваемого файла:

ftp> put document2.odt document3.odt


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

ftp> rename doument1.pdf document1.pdf


Затем удалим document3:

ftp> delete document3.odt


Для завершения сеанса FTP наберите Bye:

Сейчас многие FTP серверы используют шифрование на основе ssl сертификатов. Это необходимая мера, которая позволяет обезопасить данные пользователей. Для подключения к таким серверам необходимо использовать утилиту sftp, в остальном же процесс и команды не отличаются.

Передача файлов по FTP в графическом интерфейсе

Передача файлов на FTP через графический интерфейс может выполняться с помощью различных графических клиентов. Один из самых популярных из них - это Filezilla. Его можно использовать в Linux, Windows или MacOS. Например, для установки в Ubuntu используйте такую команду:

sudo apt install filezilla

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


Затем нажмите кнопку "Быстрое соединение". Если программа удачно подключится к серверу, то вы увидите список файлов на правой панели. На левой панели находится ваша локальная файловая система:

Чтобы передать файл достаточно его перетащить в нужную часть окна:


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

Выводы

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

FTP (File Transfer Protocol) - протокол передачи файлов (а также программа, его реализующая), являющийся стандартом для перемещения, переименования или удаления файлов на удаленном компьютере.

Протокол был разработан для передачи файлов между компьютерами, использующими сеть на основе TCP/IP, в том числе и в Internet.

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

Установив соединение и зарегистрировавшись в удаленной системе, пользователь может просмотреть каталоги файлов и найти интересующую его информацию. При этом об информации, хранящейся в каком-либо файле, он может судить по имени этого файла и его типу.

Внимание! Существует ограничение: имена файлов, передаваемых по протоколу FTP, могут содержать только буквы латинского алфавита, цифры и символы . (точка) и _ (подчеркивание). Имя файла не может начинаться с точки.

FTP - пример системы с архитектурой "клиент-сервер".

Протокол FTP обеспечивает высокую надежность передачи файлов.

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

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

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

Использование интернет-броузера

При использовании броузера (MS Internet Explorer, Netscape Navigator) в адресную строку необходимо ввести FTP-адрес вашей службы хостинга Web-страниц в виде:

Здесь <логин> и <пароль> - регистрационное имя пользователя и его пароль, полученные при регистрации сайта.

Внимание! Имя сайта в данном случае не используется.

Когда соединение будет установлено, в окне броузера появится список файлов вашего сайта. Далеее, вы можете работать с ними аналогично с обычной работой с файлами в окне броузера (т.е.просматривать, удалять,копировать).

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

Использование файловых менеджеров

При использовании файловых менеджеров для пересылки файлов процедура установки, как правило несколько иная. Вначале вводится адрес FTP-узла.

а затем по запросу узла ввести имя и пароль пользователя.

Далее правила работа с файлами ничем не отличаются от правил работы с файлами в среде программы Windows Commander или FAR.

Использование программы CuteFTP

Использование программы CuteFTP

  1. В программе CuteFTP нажимаете кнопку F4.
  2. Открывается окно, в котором надо установить:

Использование программы Dreamweaver

    1. В программе Dreamweaver выбирете в меню Site. -> New Site.
    2. Откроется окно, в котором в категории Local Info необходимо устанавить:

    По умолчанию копирование файлов будет происходить в корневую директорию вашего сайта.

    Соединение установлено. Чтобы скопировать файл, достаточно перенести его ярлык на нужную страницу (ее сразу можно открыть в другом окне броузера).

    FTP через командную строку cmd

    Продолжаем тему работы с FTP сервером! Мы уже рассмотрели основы протокола FTP, а так же способы работы с FTP сервером, а сегодня мы рассмотрим работу с FTP сервером через командную строку cmd. Как я и говорил данный метод используется довольно редко, по крайней мере мной, так как проще работать через FTP клиент. Однако, для написания автоматизированных скриптов для обмена данными между вашей локальной машиной и FTP сервером эти знания вам очень даже пригодятся.

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

    Основные команды для работы с FTP сервером через командную строку CMD

    И для начала нам необходимо запустить командную строку (Пуск \ Приложения \ Служебные программы \ Командная строка) или Win+R \ cmd.

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

    Далее необходимо подключиться непосредственно к серверу, с которым мы будем работать, делается это через команду OPEN АДРЕС_FTP_СЕРВЕРА

    Вводим ИМЯ_ПОЛЬЗОВАТЕЛЯ который имеет доступ к данному серверу и ПАРОЛЬ

    ftp cherez komandnuyu stroku cmd 2

    Если мы ведем команду DIR то нам выведется список файлов и папок которые содержатся на FTP сервере.

    ftp cherez komandnuyu stroku cmd 3

    Я не буду рассказывать о всех командах, которые используются для работы с FTP сервером через командную строку, а только те, которые нам понадобится для написания скрипта. Главным образом это команды, позволяющие копировать файлы с FTP-сервера на наш локальный компьютер и наоборот с локального компьютера на FTP-сервер.

    Вы всегда можете набрать команду HELP и вам выведется список поддерживаемых команд, чтобы узнать назначение команды достаточно ввести HELP НАЗВАНИЕ_КОМАНДЫ.

    ftp cherez komandnuyu stroku cmd 4

    Но, тут описание очень скромное, поэтому, если вы хотите узнать более подробное описание различных команд, заходите ко мне на сайт в тематическую статью. Ссылку я размещу в описании к данному видео.

    У меня нет доступа для непосредственно записи файлов в корень данного FTP-сервера, но есть доступ к папке htdocs, поэтому для начала перейдём в данную папку. Делается это команды CD ИМЯ_ПАПКИ.

    Мы видим, что в данной папке у нас ничего нет. Давайте попробуем скопирую сюда какой-нибудь файл с нашего локального компьютера. Для этого на локальном компьютере создадим папочку, допустим у меня это будет nod32_update так как в одном из следующих видео, я буду рассказывать о том, как написать скрипт для автоматического обновления антивируса NOD32. И давайте создадим какой-нибудь текстовый документ допустимым 123.txt.

    Чтобы скопировать файл 123.txt на FTP-сервер вводим команду PUT c:\nod32_update\123.txt. Файл скопирован, можем проверить это командой DIR. Как вы видите, файл скопировался именно в ту папку, в которую мы перешли через команду CD.

    Если нам необходимо скопировать все файлы с определенной папки на локальном компьютере в папку на FTP сервере, то нам необходимо указать текущий локальный каталог и каталог на сервере.

    Каталог на сервере мы научились указывать, через команду CD

    ftp cherez komandnuyu stroku cmd 5

    Локальный каталог указывается через команду LCD, если мы её наберем, то увидим, что текущий каталог — это папка с профилем текущего пользователя. А так как я собираюсь копировать файлы из другой папки то ввожу команду LCD ПУТЬ_К_НУЖНОЙ_ПАПКЕ

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

    Для того, чтобы скопировать все файлы из локальной папки в удаленную я указываю команду MPUT *.*, где *.* означает все файлы находящиеся в локальной папке.

    Здесь у нас задаётся вопрос подтверждение для каждого файла хотим его скопировать или нет для этого живём Enter. Чтобы подобные подтверждение не выводились есть команда PROMT отключает интерактивный режим выключен.

    ftp cherez komandnuyu stroku cmd 6

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

    Как видите всё отлично, в нашей папке появились все необходимые файлы и теперь мы можем закончить работу с FTP сервером через команду QUIT.

    Часто требуется автоматизировать процессы скачивания, загрузки и удаления файлов 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] [узел]

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

    komanda_ftp_01

    Далее, работа с FTP-сервером происходит уже при помощи следующих операторов (пропустить) :

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

    komanda_ftp_02

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

    В итоге получим требуемый результат:

    komanda_ftp_03

    komanda_ftp_04

    komanda_ftp_05

    2. Пример bat-файла для загрузки файла на FTP

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

    komanda_ftp_06

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

    komanda_ftp_07

    komanda_ftp_08

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

    Смотрите также:

    Не все знают, что можно создать прямую ссылку на файл, хранимый на FTP-Сервере, "зашив" в нее логин и пароль. Также возможно создать ярлык на какую-либо директорию или даже подключить ее…

    Может случиться так, что в процессе установки MS SQL Server 2012 были установлены компоненты, необходимость в которых со временем отпала (или были установлены по ошибке). В этом случае, в целях…

    FTP-Сервер обеспечивает возможность передачи файлов между клиентом и сервером с помощью протокола FTP. Здесь будет рассказано как запустить FTP-сервер в Windows Server 2008 R2. 0. Оглавление Добавление службы FTP-сервер Добавление…

    Читайте также: