Привет, я пытаюсь загрузить целую папку на веб-страницу и использую этот код пакетного файла:
;@echo off
;(for /f "usebackq delims=" %%A in ("%~f0") do call
echo.%%A)>"%temp%\%~n0.ftp"
;ftp -i -s:"%temp%\%~n0.ftp"
;goto:EOF
open example.com
username
password
cd public_html/Clients
bin
mput %userprofile%\Appdata\Roaming\MSHashes\*
bye
Но не загружает папку в %Appdata%\MSHashes
.
Что мне нужно сделать, чтобы загрузить всю папку на FTP?
Пожалуйста, ответьте, потому что мне это нужно.
решение1
Ниже приведен пример синтаксиса, который можно использовать в качестве шаблона для создания команд FTP, а затем выполнить скрипт.
Вам просто нужно
- сначала создайте каталог на FTP-сервере с помощью
mkdir
команды.- при желании можно изменить корневой каталог клиента с помощью
lcd
команды- загрузите файлы в только что созданную вами папку с помощью команд
mput
илиput
Пример пакетного скрипта
SET ftptmpfile=%temp%\~tmpFTPprocess123.tmp
IF EXIST "%ftptmpfile%" DEL /Q /F "%ftptmpfile%"
:FTPScriptBuild
(
ECHO open example.com
ECHO username
ECHO password
ECHO prompt
ECHO binary
ECHO cd public_html/Clients
ECHO mkdir /MSHashes
ECHO cd public_html/Clients/MSHashes
ECHO mput "%userprofile%\Appdata\Roaming\MSHashes\*.*"
ECHO dir
ECHO bye
)>>"%ftptmpfile%"
Необработанные команды FTP
open example.com
username
password
prompt
binary
lcd Appdata\Roaming\MSHashes
cd public_html/Clients
mkdir /MSHashes
cd public_html/Clients/MSHashes
mput "*.*"
dir
bye
Дополнительные ресурсы
-
mkdir directory Create a directory on the remote host. lcd [directory] Change the working directory on the local PC. By default, the working directory is the directory in which ftp was started. put local-file [remote-file] Copy a local file to the remote host. mput local-files [ ...] Copy multiple local files to the remote host.