Как передать файл на сервер

Обновлено: 05.07.2024

Утилиту «ftp.exe», входящую в состав Windows по умолчанию, можно запустить из командной строки. Она позволяет скачивать и загружать файлы по протоколу FTP вручную, но главное ее достоинство — функции автоматизации. С ее помощью можно запланировать и автоматизировать передачу файлов по FTP на регулярной основе.

Чтобы получить справку по утилите FTP, введите в командной строке ftp -? и нажмите [Enter]. Чтобы посмотреть список доступных команд, введите ftp и нажмите [Enter] для запуска утилиты, а затем введите ? и снова нажмите [Enter]. Для завершения работы утилиты введите bye и нажмите [Enter].

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

Передача одного файла

Скопируйте в Блокнот (Notepad) следующий текст, подставив нужные значения, и сохраните его как «H:\TransferTest\transfer.bat».

Назначение команд:

• ftp — запускает утилиту FTP;
• -v — отключает вывод информации об ответах удаленного FTP-сервера;
• -n — отключает автоматический вход;
• -s: — указывает путь к файлу, содержащему команды для FTP-передачи. Путь не должен содержать пробелов .

Затем скопируйте в Блокнот следующий текст, подставив нужные значения, и сохраните его как «H:\TransferTest\transfer.ftp».

Назначение команд:

• open — открывает удаленный FTP-сервер;
• user — указывает имя пользователя для входа на сервер;
• password — указывает пароль для входа на сервер;
• cd — переходит в указанный удаленный каталог для загрузки файлов, в данном примере — «/public_ftp/test»;
• put — загружает указанный локальный файл на удаленный сервер; кавычки можно не использовать, если путь не содержит пробелов;
• bye — завершает сеанс подключения и работу утилиты FTP.

Совет: команды FTP можно сокращать до трех символов — например, использовать bin вместо binary.

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

• Откройте в Проводнике папку, в которой хранится нужный файл, нажмите правой кнопкой мыши на любом фрагменте адреса в адресной строке и выберите опцию «Копировать адрес как текст» (Copy Address as Text). Вставьте скопированный адрес в сценарий FTP и добавьте к нему имя файла.
• Нажмите правой кнопкой мыши на файле в Проводнике, выберите опцию «Свойства» (Properties) и откройте вкладку «Безопасность» (Security). Скопируйте полный путь к файлу из строки «Имя объекта» (Object name) и вставьте его в сценарий FTP.

В командной строке введите H:\TransferTest\transfer.bat и нажмите [Enter] или запустите командный файл двойным щелчком. При этом может появиться предупреждение безопасности, показанное на рис. I.

Три способа передачи файлов по FTP средствами Windows


Рисунок I. Выберите опцию «Общественные сети» (Public Networks) и нажмите кнопку «Разрешить доступ» (Allow Access).

Три способа передачи файлов по FTP средствами Windows


Рисунок J. Команда put загружает файл с клиентского компьютера на сервер. Если такой файл на сервере уже есть, он будет заменен.

Для скачивания файла с удаленного сервера на клиентский ПК используется команда get.

Передача нескольких файлов

Скопируйте в Блокнот следующий текст, подставив нужные значения, и сохраните его как «H:\TransferTest\multiple_transfer.bat».

Скопируйте в Блокнот следующий текст, подставив нужные значения, и сохраните его как «H:\TransferTest\multiple_transfer.ftp».

Назначение команд:

• open — открывает удаленный FTP-сервер;
• user — указывает имя пользователя для входа на сервер;
• password — указывает пароль для входа на сервер;
• cd — переходит в указанный удаленный каталог для загрузки файлов, в данном примере — «/public_ftp/test»;
• prompt — отключает интерактивные приглашения на ввод при загрузке множественных файлов с использование команды mput;
• mput — загружает указанные файлы ASCII с локального ПК; кавычки можно не использовать, если путь не содержит пробелов;
• lcd — переходит в указанный локальный каталог, в котором хранятся файлы для загрузки, в данном примере — «\Projects\PSWW\VIC\Package»;
• binary — переключается в режим двоичной передачи;
• mput — загружает указанные бинарные файлы с локального ПК; кавычки можно не использовать, если путь не содержит пробелов;
• bye — завершает сеанс подключения и работу утилиты FTP.

Теперь в командной строке введите H:\TransferTest\multiple_transfer.bat и нажмите [Enter] или запустите командный файл двойным щелчком (рис. K).

Три способа передачи файлов по FTP средствами Windows


Рисунок K. Этот сценарий позволяет загрузить на сервер сразу несколько файлов.

Обратите внимание — я использовал команду cd для смены каталога в командном файле и команду lcd для смены локального каталога в сценарии FTP, чтобы упростить команду mput за счет использования относительного пути вместо полного.

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

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

Для скачивания нескольких файлов с удаленного сервера на локальный ПК используйте команду mget.

Передача текстовых и бинарных файлов

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

Проблемы безопасности

При передаче файлов по протоколу FTP возникает очевидная угроза безопасности. Если имя пользователя и пароль хранятся в незашифрованном текстовом файле, их может украсть любой, кто имеет доступ к компьютеру. Так что сценарий FTP стоит зашифровать. Подробнее о шифровании можно узнать в штатной справке Windows, воспользовавшись поиском по ключевому слову «шифрование». Нужные сведения содержатся в разделе «Шифрование или расшифровка папки или файла» (Encrypt or Decrypt a Folder or File). О шифровании в Windows 2000, Windows Server 2003, Windows XP, Windows Vista и Windows 7 рассказывается также на сайте Microsoft. В Википедии приводится полный версий Windows, поддерживающих систему шифрования данных Encrypting File System (EFS). Кроме того, можно воспользоваться сторонним приложением для шифрования, например, TrueCrypt.

Проблемы при использовании брандмауэра

В заключение

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

Подключение к серверу посредством SSH – один из основных методов управления *nix серверами. Довольно часто возникает необходимость загрузить файл на удаленный сервер, либо выгрузить, и других средств кроме SSH-подключения нет. К счастью, копирование файлов через защищенное соединение – одна из штатных функций этого протокола и реализуется с помощь отдельной команды scp в Linux-системах, либо с помощью pscp.exe, входящей в состав SSH-клиента Putty для операционной системы Windows.

Работаем на ОС семейства Linux

Используем следующий формат команд:

scp [модификатор] [источник] [место_назначения]

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

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

Если собрать все вместе, то скопировать локальный файл /home/user/file.tgz в домашний каталог пользователя root удаленного сервера 123.123.123.123 можно командой:

scp /home/user/file.tgz root@123.123.123.123:/root

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

scp root@123.123.123.123:/root/file.tgz /home/user

За одну операцию можно скопировать несколько файлов, для этого необходимо указать их в качестве источника, разделив пробелом – местом назначения будет считаться последний указанный параметр. Например, загрузить файлы file1.tgz и file2.tgz из локального каталога на удаленный сервер позволит команда:

scp file1.tgz file2.tgz root@123.123.123.123:/root

Для копирования каталога потребуется задействовать модификатор команды –r. Копируем локальный каталог /home/user/dir на удаленный сервер:

scp –r /home/user/dir root@123.123.123.123:/root

В тех случаях, когда SSH-сервер работает на нестандартном порту, поможет опция –P. Если нужно подключиться через порт 10022:

scp –P 10022 /home/user/file.tgz root@123.123.123.123:/root

Чтобы узнать какие еще модификаторы поддерживает команда, можно просто запустить scp без параметров и прочитать краткую справку.

Работаем на ОС семейства Windows

При использовании операционной системы Windows и Putty в качестве клиента, формат команды остается тот же, меняется только название исполняемого файл и используется синтаксис указания путей к файлам и каталогам Windows при указании источника или места назначения. Запускаем командную строку (cmd.exe) или PowerShell, переходим в каталог, где расположен файл pscp.exe вводим команду:

pscp.exe C:Tempfile.tgz root@123.123.123.123:/root

В случае запуска из какой-либо другой папки понадобится указать полный путь к pscp.exe. Если в каком-либо из путей присутствуют пробелы, используются двойные кавычки — “Путь к файлу”:

“C:Program FilesPuttypscp.exe” C:Tempfile.tgz root@123.123.123.123:/root

Как и в случае с scp, запустив pscp.exe без параметров, можно увидеть краткую справку по синтаксису команды и перечень поддерживаемых модификаторов.

Запуск команд на удаленном сервере через SSH-подключение

Протокол SSH, помимо работы в интерактивном режиме, поддерживает также разовый запуск команд или скриптов на удаленном сервере.

Работаем на ОС семейства Linux

ssh [пользователь]@[сервер] ‘[команда]’

При запросе вводим пароль указанного пользователя и в консоли получаем вывод команды, если таковой имеется.

Например, получим информацию об установленной на удаленном сервере операционной системе:

ssh root@123.123.123.123 ‘uname -a’

Чтобы запустить несколько команд за одно подключение, можно использовать символ “;” в качестве разделителя. Проверим сетевые настройки и активные сетевые подключения на удаленном сервере:

ssh root@123.123.123.123 ‘ifconfig; netstat -anp tcp’

В случае, если потребуется запустить на удаленном сервере локальный файла сценария, потребуется в SSH-подключении вызвать командный интерпретатор в режиме исполнения сценария (например, bash с ключом -s), и на стандартный ввод передать ему файл сценария. Выглядеть эта конструкция будет так:

ssh root@123.123.123.123 ‘bash -s’ < /home/user/myscript.sh

В результате локальный файл /home/user/myscript.sh исполнится на удаленном сервере.

Запуск команды SSH без параметров позволит ознакомиться с краткой справкой по синтаксису и списком дополнительных модификаторов, которые позволяют расширить функциональность команды.

Работаем на ОС семейства Windows

Если мы подключаемся к удаленному серверу с компьютера, работающего на операционной системе Windows, то нам снова потребуется обратиться к терминальному клиенту Putty, в состав которого входит исполняемый файл plink.exe. Работать с этим файлом необходимо из командной строки (cmd.exe) или из PowerShell.

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

plink.exe [сервер] -ssh -l [пользователь] “[команда]”

Проверим конфигурацию сетевых интерфейсов:

plink.exe 123.123.123.123 -ssh -l root “ifconfig”

Как и при работе с командой SSH в Linux, plink.exe позволяет использовать “;” в качестве разделителя для запуска нескольких команд:

plink.exe 123.123.123.123 -ssh -l root “ifconfig; netstat -anp tcp”

А запуск команд из локального файла можно реализовать с помощью дополнительного ключа -m:

НачатьПомещениеФайла (< ОписаниеОповещенияОЗавершении >, < Адрес >, < ПомещаемыйФайл >, < Интерактивно >, < УникальныйИдентификаторФормы >, < ОписаниеОповещенияПередНачаломПомещенияФайла >)

Метод работает в асинхронном режиме. Возможны два варианта выбора файла для передачи на сервер:

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

Параметр ОписаниеОповещенияОЗавершении содержит описание процедуры (тип ОписаниеОповещения), которая будет вызвана после завершения помещения файла во временное хранилище. Эта процедура должна иметь ключевое слово Экспорт и 4 параметра:

Следует обратить внимание на параметр УникальныйИдентификаторФормы. В него рекомендуется передавать идентификатор текущей формы для сохранения данных во временном хранилище между несколькими серверными вызовами. При закрытии формы данные из временного хранилища будут автоматически удалены.

Неинтерактивная передача файла на сервер

Рассмотрим пример неинтерактивной передачи файла на сервер, без вызова окна выбора файла:

При интерактивном выборе файла дополнительно необходимо предусмотреть два момента:

  • указать настройки диалога выбора файла (если требуется);
  • проверять, что пользователь действительно выбрал файл.

Интерактивная передача файла на сервер

Рассмотрим, пример интерактивной передачи файла на сервер:

// Файл выбран
ВыполнитьЗагрузкуНаСервере ( Адрес );

Процедура ВыполнитьЗагрузкуНаСервере при интерактивном и неинтерактивном режимах одинаковая.

Передача файла на сервер средствами БСП

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

общего модуля ФайловаяСистемаКлиент или

ВыбратьИПередатьФайлНаСервер ( ОповещениеЗавершения , Знач ПараметрыДиалога = Неопределено, Знач ИдентификаторФормы = Неопределено) Экспорт

общего модуля ОбменДаннымиКлиент.

Пример интерактивной загрузки файла на сервер средствами БСП:

Остались вопросы?
Спросите в комментариях к статье.

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

Данный протокол можно использовать практически на любом компьютере на базе Windows или Mac OS. К тому же любой хостинг провайдер предоставляет возможность подключиться при помощи данного способа подключения.

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

FTP сервер

Что такое FTP-сервер

Протокол ФТП это простой способ передачи данных на любое устройство, без прямого подключения к нему. Данная разработка стала популярна благодаря следующим преимуществам:

  • Прост в использовании. Его интеграция не занимает большого количества времени;
  • Вся документация русифицирована и изучена;
  • Поддерживает IP адреса типа IPv6;
  • Способен работать с любыми размерами файлов (вплоть до сотен гигабайт);
  • Совместимо с Proxy-серверами;
  • Drag & Drop. Визуальное управление и перемещение файлов;
  • Высокая скорость передачи. Использует на максимум пропускной канал;
  • огромное количество операций одновременно;
  • Просмотр директорий. Дает возможность полностью исследовать директории на высокой скорости;
  • Поддерживает очередь. Можно отправлять по очереди файлы, что позволяет производить
  • Настройки доступа. Протокол позволяет открывать доступ к папкам конкретным пользователям.

Настройка FTP

В первую очередь следует получить доступ от FTP-сервера, что можно сделать в настройках хостинга. На примере Timeweb в панели управления потребуется перейти во вкладку «Пользователи ПУ/FTP».

Доступ от FTP-сервера

Нажимаем на «Добавить нового пользователя».

Добавить нового пользователя

В появившемся окне следует заполнить:

  • Логин. Префикс логина выдается сразу, следует закончить его;
  • Пароль;
  • Комментарий. Позволяет написать кому выдан доступ;
  • Настройка прав. Здесь потребуется выбрать нужные права доступа.

Новый пользователь

Далее устанавливается ПО и уже осуществляются настройки:

  • Server Address. Сюда следует ввести IP-адрес нужного сервера;
  • Port. Как правило, выдается при создании доступа для удаленного управления.
  • Administration password. Пароль от данного ПК.
  • Галка на настройке «Always connect to this server». Позволяет сразу же подключаться к выбранному устройству сразу при запуске программы.

Запуск програмы

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

Как подключиться к FTP серверу

Подключение к FTP серверу

  • Хост. Как правило, IP-адрес;
  • Имя пользователя;
  • Пароль;
  • Порт.

Поле для данных

Все эти данные были получены еще при создании доступа (инструкция выше).

После кликаем на «Быстрое соединение».

В правой части ПО откроется выбранная директория с папками и файлами. Следует понимать, что открыть их через данный софт не получиться, но передача данных возможна (скачивание/отправка).

Передача файлов по FTP

После того, как подключение через FileFilla Client было осуществлено можно начинать работу с документами, например, закачать файлы, для чего выделяем нужные и кликаем правой кнопкой мыши, где в выпавшем списке выбираем «Закачать на сервер».

Как закачать файлы на сервер

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

Передача файлов

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

Теперь можно в логах увидеть общий вес и статус.

Общий вес и статус

Также среди дополнительных функций софта:

  • Создание каталога/папок;
  • Редактирование. Открывает лишь файлы на локальном компьютере;
  • Переименовать. Позволяет задать новое название файлу на обоих концах связи.

Для того, чтобы быстро и легко передавать данные с одного устройства на другое используется популярный протокол FTP, разработанный еще в 70-х.

Сегодня он также популярен, как и раньше, а благодаря развитию интернета с ним начали работать как хостинг-провайдеры, так и стандартные explorer-клиенты. Для подключения к ФТП можно использовать следующие утилиты:

  • FileZilla;
  • Total Commander;
  • Через Windows RDS-панель.

Благодаря подключению через данную технологию можно получить следующие преимущества:

1. Убрать ограничения на скачивание больших файлов. Достаточно часто хостеры запрещают работать с большими объемами (от 1 Гб), но при использовании протокола ограничение отменяется;

2. Ускорить поток. При помощи FileZilla можно значительно быстрее получить нужный файл и в нужной кодировке;

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

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