Как автоматизировать FTP-загрузку из командной строки Windows
Windows включила пакетные файлы еще до того, как они существовали ... пакетные файлы действительно старые! Старый или нет, я все еще часто создаю командные файлы, чтобы помочь мне автоматизировать общие задачи. Одна из распространенных задач - загрузка файлов на удаленный FTP-сервер. Вот способ, которым я обошел это.
Во-первых, вам нужно будет создать файл fileup.bat в вашем каталоге Windows или, по крайней мере, в некотором каталоге, включенном в ваш путь. Вы можете использовать команду «путь», чтобы увидеть текущий путь.
Внутри командного файла вы захотите вставить следующее:
@ эхо выключено
echo user MyUserName> ftpcmd.dat
echo MyPassword >> ftpcmd.dat
echo bin >> ftpcmd.dat
echo put% 1 >> ftpcmd.dat
эхо выйти >> ftpcmd.dat
ftp -n -s: ftpcmd.dat SERVERNAME.COM
del ftpcmd.dat
Вам нужно заменить MyUserName, MyPassword и SERVERNAME.COM на правильные значения для вашего ftp-сервера. Этот пакетный файл выполняет сценарии утилиты ftp с использованием опции -s для утилиты командной строки.
Пакетный файл использует команду «echo» для отправки текста на ftp-сервер, как если бы вы его набрали. В середине файла вы можете добавить дополнительные команды, потенциально команду изменения каталога:
echo cd /pathname/>>ftpcmd.dat
Чтобы вызвать этот пакетный файл, вы вызовете пакетный файл, используя имя файлаup.bat, которое мы ему дали, и передайте имя файла в качестве параметра. Вам не нужно вводить .bat часть имени файла, чтобы это работало, либо.
Пример:
> fileup FileToUpload.zip
Подключен к ftp.myserver.com.
220 Microsoft FTP Service
ftp> user myusername
331 Требуется пароль для myusername.230 Пользователь myusername вошел в систему.
ftp> bin
200 Тип установлен на I.
ftp> поставить FileToUpload.zip
Команда 200 PORT успешна.
150 Открытие режима передачи данных BINARY для FileToUpload.zip
226 Передача завершена.
ftp: 106 байт, отправленных за 0,01 секунды 7,07 КБ / с.
ftp> выход
И это все, что нужно сделать. Теперь ваш файл должен находиться на удаленном сервере.