我的文件夹“all”包含许多文件。在里面我放了一个批处理文件,我想将一些文件从“all”文件夹复制到“inner”文件夹中。我要复制的文件我在批处理文件中的数组“files”中指定。批处理文件应包含什么?这似乎不起作用:
set sources[0]="file1.txt"
for /F "tokens=2 delims==" %%s in ('set sources[') do xcopy /s "path\to\source\%%s" "path\to\source\inner\%%s"
答案 0 :(得分:1)
1 - 引号存在“问题”。您正在引用文件名和完整路径,包括仍然引用的文件名,因此您以"path\to\source\"file1.txt""
结尾。它可以按原样工作,但有时它会产生问题。使用正确的引用。
2 - xcopy /s
用于递归目录复制。不是单个文件复制。
尝试
set "sources[0]=file1.txt"
for /F "tokens=2 delims==" %%s in ('set sources[') do (
copy "path\to\source\%%~s" "path\to\source\inner\%%~s"
)