在Windows命令行中将子文件夹上载到FTP

时间:2010-12-03 08:08:04

标签: windows cmd ftp directory

我必须在Windows上上传整个文件夹命令行。我无法上传子目录,包括它的文件。

ftp
open snuzzer.dk
username
password
mput *.*

这只会上传根目录中的所有文件。

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

Windows命令行ftp.exe客户端不支持使用(子)文件夹进行操作。

您必须使用第三方FTP客户端。

例如,使用WinSCP,您可以使用:

winscp.com /log=ftp.log /command ^
    "open ftp://username:password@ftp.example.com/" ^
    "put *" ^
    "exit"

converting Windows ftp.exe script to WinSCP script的指南。虽然更容易拥有WinSCP GUI generate the script or batch file for you

(我是WinSCP的作者)

答案 1 :(得分:0)

一种方法是将ncftpput与-R选项一起使用。

答案 2 :(得分:0)

您可以使用为ftp创建命令文件的批处理脚本,然后使用该文件发出ftp命令。

有点谎言:

@ECHO OFF    
ECHO open snuzzer.dk>command.txt
ECHO username>>command.txt
ECHO password>>command.txt

FOR /F "delims=" %%A IN ('DIR /b /s /a-d "%1"') DO (
   ECHO put "%%A">>command.txt
)

ECHO close>>command.txt

ftp /s:command.txt

FOR循环只是重复创建所有文件的列表。