我想将文件(例如:a.jpg)复制到目录中的所有文件夹。
我需要像
这样的东西copy a.jpg */a.jpg
你有一个类似的批处理文件吗?
(ps。我使用的是Windows)
答案 0 :(得分:5)
使用for命令
for /f "tokens=*" %f in ('dir . /ad/b') do copy "a.jpg" "%f"
在放入批处理文件时,请记住使用%% f而不是%
答案 1 :(得分:5)
您可以使用for
命令和/r
开关来执行此操作,该开关用于枚举目录树。例如,这会将C:\ a.jpg文件复制到C:\ Test文件夹及其所有子文件夹:
for /r "C:\Test" %%f in (.) do (
copy "C:\a.jpg" "%%~ff" > nul
)
for /r "C:\Test" %%f in (.)
语句枚举C:\ Test文件夹及其所有子文件夹,%%~ff
返回当前文件夹名称。
答案 2 :(得分:2)
您可以使用以下命令
复制目录的所有文件夹中的文件for / F%g in('dir / AD / B / S')DO copy c:\ myfile%g
说明:
在上述命令中: - %g是一个变量, dir / AD / B / S: - 是一个查看目录的所有文件夹和子文件夹的命令, / F: - 是一个我们用于命令的开关,如果我们想要迭代括在括号中的命令的结果(在我们的例子中它是('dir / AD / B / S'), c:\ myfile: - 是我们要在所有子文件夹中复制的文件