Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 使用xcopy批处理命令将文件夹从源文件夹复制到目标文件夹_Windows_Batch File_Cmd - Fatal编程技术网

Windows 使用xcopy批处理命令将文件夹从源文件夹复制到目标文件夹

Windows 使用xcopy批处理命令将文件夹从源文件夹复制到目标文件夹,windows,batch-file,cmd,Windows,Batch File,Cmd,我有一个批处理文件,它正在将数据从源文件夹复制到目标文件夹。名为list.txt的文本文件决定将源文件夹中的哪些文件夹复制到dest文件夹。 文本文件list.txt的内容包括: F:\200208 F:\200210 F:\200214 批处理文件是: @echo off for /f "tokens=*" %%i in (list.txt) do ( xcopy /s /i "%%i" "D:\username\Videos\%%i" ) pause 但是,当我运

我有一个批处理文件,它正在将数据从源文件夹复制到目标文件夹。名为list.txt的文本文件决定将源文件夹中的哪些文件夹复制到dest文件夹。 文本文件list.txt的内容包括:

F:\200208
F:\200210
F:\200214
批处理文件是:

@echo off
for /f "tokens=*" %%i in (list.txt) do (
        xcopy /s /i "%%i" "D:\username\Videos\%%i"
    )
pause
但是,当我运行批处理文件时,会收到以下错误消息:

Invalid path
0 File(s) copied
Invalid path
0 File(s) copied
Invalid path
0 File(s) copied
Press any key to continue . . .
此批处理文件所在的驱动器的名称为F 名为200208、200210和200214的文件夹确实存在于同一驱动器F中。此外,dest文件夹也存在


有人能指出问题所在吗?

代码中的目标路径正在解析为
“D:\username\Videos\F:\200208”
。这就是为什么您得到的路径无效


您只需要文件夹名称,以便将目标路径中的
%%i
更改为
%%~nxi

在循环中的行首放置一个
回音
,以便可以看到问题。它看起来像是ECHO xcopy/s/i“%%i”D:\username\Videos\%%i”。