Загрузка по FTP из пакетного файла Windows
Следуя различным путеводителям по сети, я собрал пакетный файл, который должен загрузить.zip на наш центральный файловый сервер. Однако, если я использую "ftp -n -s:ftpup.dat 108.174.61.82 20", он не будет работать с портом 20, добавленным к хосту. Я также попытался "ftp -n -s:ftpup.dat" затем "открыть 108.174.61.82 20" на следующей строке, которая также не удается. Что именно я делаю не так?
cd MySQL
@echo off
echo user backups>ftpup.dat
echo passwordhere>>ftpup.dat
echo cd /MySQL>>ftpup.dat
echo binary>>ftpup.dat
echo put MYSQL-%location%.%backuptime%.zip>>ftpup.dat
echo quit>>ftpup.dat
ftp -n -s:ftpup.dat serveriphere 20
del ftpup.dat
2 ответа
Вы используете FTP-сервер или порт 20?
Telnet обслуживает здесь 20, чтобы проверить, прослушивает ли порт, возможно у вас он работает на порте по умолчанию 21
PS: это сырой протокол FTP? Возможно это использует SFTP или FTPS
РЕДАКТИРОВАТЬ: попробуйте с
ftp -s:ftpup.dat служить здесь 20
Удалить флаг -n autologin
Попробуйте с этим:
Echo ~UsrName~> ftpcmd.txt
echo ~myPass~>> ftpcmd.txt
echo binary>> ftpcmd.txt
echo prompt n>>ftpcmd.txt
echo mget *.exe>> ftpcmd.txt
echo bye >> ftpcmd.txt
ftp -s:ftpcmd.txt ~ftpAddress~
del ftpcmd.txt
Я знаю, что это старый вопрос, но у меня была та же проблема с портом, это то, что у меня сработало, я сохранил команду open %ftphost% > ftpcmd.dat
в файле, а не вызывать его позже
SET ftphost=172.xxx.xxx.xx 22
ECHO open %ftphost% > ftpcmd.dat
ECHO user %username%>> ftpcmd.dat
ECHO %userpass%>> ftpcmd.dat
ECHO bin>> ftpcmd.dat
ECHO put %file%>> ftpcmd.dat
ECHO quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat
del ftpcmd.dat