Как создать a .BAT
файл для загрузки файла или папки от FTP-сервера? (и замена им существующий файл) (у нас есть ссылки как ftp://me:mypass@example.com/file.file
(или http://example.com/file.file), и абсолютный файл связываются как C:\Users\UserName\Some mixed Русский English Adress\file.file
) (использование только собственных окон (xp перспектива win7 и т.д.) функции BAT и файлы)
Вот пример того, как автоматизировать встроенный инструмент ftp.exe
:
Пример касается загрузки, но принцип тот же (просто используйте get
вместо put
).
Тем не менее, поскольку это всего лишь «конвейерная передача команд» в ftp.exe, я рекомендую не делать этого для командных файлов производственного качества (без обработки ошибок и т. Д.), А вместо этого использовать какой-нибудь внешний инструмент. Я дал этот ответ только потому, что вы явно запросили решение, которое использует только встроенные команды Windows.
РЕДАКТИРОВАТЬ: Вот конкретный пример:
REM replace this with your user name and password
REM make sure there is no space between the pwd and the >>
echo user me > getftp.dat
echo mypass>> getftp.dat
echo binary >> getftp.dat
REM replace this with the remote dir (or remove, if not required)
echo cd remoteSubDir >> getftp.dat
REM replace this with the local dir
echo lcd C:\Users\UserName\SomeLocalSubDir >> getftp.dat
REM replace this with the file name
echo get file.file >> getftp.dat
echo quit >> getftp.dat
REM replace this with the server name
ftp -n -s:getftp.dat example.com
del getftp.dat
FTP-программа командной строки, встроенная в большинство операционных систем Windows , доступна для сценариев. Вам просто нужно создать текстовый файл с командами, которые вы бы отправили, если бы вы запускали его вручную (по одной команде в строке), а затем выполнить его следующим образом:
ftp -s:download.scr
Я ранее использовал WGET в пакетном файле для этого. http://www.gnu.org/software/wget/
Какое программное обеспечение FTP-клиента вы используете? Можно ли его использовать в качестве сценария? Если да, создайте сценарий, который загружает файлы, и вызовите этот сценарий из вашего пакетного файла.
Я делаю это с помощью WS_FTP.