逃脱>不使用嵌入式命令

时间:2018-05-01 15:14:28

标签: windows batch-file

我在Windows 2003上运行此操作,(没有其他选项)

采取以下代码:

@echo off
for /F "tokens=*" %%f in ('Dir /s /b E:\file 2^>nul') do (
    @echo %%f
)

这是递归搜索E:所有名为file的文件。然后打印出匹配,看起来像E:\path\to\file

因此,Dir会在搜索后自然打印File Not Found,这会打印到stderr

所以,我尝试使用下面的(在上面的命令中)重定向stderr

2^>nul

嵌入^命令时,>会转义Dir。但是,我只是得到错误,(尽管这是许多人的共同解决方案)

> was unexpected at this time

我已在Windows 7上对此进行了测试,但效果很好,因此我尝试将>括在语音标记中,该标记用于NT和之前的(据我所知,逃避角色。

2">"nul

此行为相同,仍然输出到stderr

有什么想法吗?

0 个答案:

没有答案