Batch file 命令中带括号的循环批处理
我有一个批处理文件,代码如下:Batch file 命令中带括号的循环批处理,batch-file,for-loop,escaping,Batch File,For Loop,Escaping,我有一个批处理文件,代码如下: for /f "tokens=*" %%a in ('dir /b /a-d') do ( echo Processing %%a >>%LOG% dtsrun /S(local) /NNotesLoad /A"FilePath:8="%NOTESDIR%\%%a" /AClientID=%1 >>%LOG% echo Deleting %%a >>%LOG% del %%a /q ) 这将返回一条错误消息“/NNo
for /f "tokens=*" %%a in ('dir /b /a-d') do (
echo Processing %%a >>%LOG%
dtsrun /S(local) /NNotesLoad /A"FilePath:8="%NOTESDIR%\%%a" /AClientID=%1 >>%LOG%
echo Deleting %%a >>%LOG%
del %%a /q
)
这将返回一条错误消息“/NNotesLoad此时意外”,因为第二个括号实际上正在关闭FOR块
我必须将(本地)保留为/S参数如何转义dtsrun行中的括号 编辑:您可以在dtsrun中为本地as指定服务器
但是我仍然想知道括号转义的答案。括号字符转义的解决方案是使用插入符号作为前缀^ 因此,它将是:
/S^(local^)