Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.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 循环/D标志的批处理文件未出现在命令行中_Windows_Batch File - Fatal编程技术网

Windows 循环/D标志的批处理文件未出现在命令行中

Windows 循环/D标志的批处理文件未出现在命令行中,windows,batch-file,Windows,Batch File,我有一个小的批处理文件,我想用它将一个文件从一个位置复制到多个可能有不同名称的位置 for /D %%f in ("%%localappdata%%\Microsoft\Opc*") do ( for /D %%x in ("%%f\*") do (copy /y user.config %%x\) ) 我可以让它在命令行中正常运行,但如果我尝试运行批处理脚本,则命令行上只显示以下内容: for / %f in ("%localappdata%\Microsoft\Opc*") do

我有一个小的批处理文件,我想用它将一个文件从一个位置复制到多个可能有不同名称的位置

for /D %%f in ("%%localappdata%%\Microsoft\Opc*") do (
    for /D %%x in ("%%f\*") do (copy /y user.config %%x\)
 )
我可以让它在命令行中正常运行,但如果我尝试运行批处理脚本,则命令行上只显示以下内容:

for / %f in ("%localappdata%\Microsoft\Opc*") do (
   for / %x in ("%f\*") do (copy /y user.config %x\ ) 
)
看起来,不管出于什么原因,/D标志正在被更改为just/


我是批处理脚本编写新手,因此非常感谢您的帮助

在批处理脚本中:与(正确)加倍
%%
登录百分比
%%f
%%x
参数相反,不要在环境变量名中加倍
%%
,如
%localappdata%

for /D %%f in ("%localappdata%\Microsoft\Opc*") do (
    for /D %%x in ("%%f\*") do (copy /y user.config %%x\)
 )

但是,这种惊人的
/
回声而不是
/D
不应影响
for/D
命令功能(仍在搜索解释)

在批处理中:
for/D%%f In(“%localappdata%\Microsoft\Opc*”)do(
不要加倍
%
百分比登录
%localappdata%
等…与
%f
%x
不同,令人惊讶的
//code>回音而不是
/D
应该不会影响
for/D
功能(希望哈哈!).1对于你的问题…@JosefZ看起来你是对的,唯一的问题是localappdata周围的双%s。仍然不知道为什么/D没有正确响应,但感谢你的帮助!如果你想回答这个问题,我会将其标记为正确。在我的例子中,我错误地循环了
%f
,而不是de>%f\*
。不同的问题,相同的奇怪错误。