我在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
。
有什么想法吗?