我目前有一个看起来像这样的批处理语句
findstr "PreprocessorDefinitions=.*%D_KEYWORD%" %PROJ% > nul 2>&1
if errorlevel 1 (
set D_OPT=
) else (
set D_OPT=/D%D_KEYWORD%
)
我想知道以下含义是什么?
> nul 2>&1
我看了here并说明了
... >nul 2>nul
表示忽略命令输出并忽略错误消息
现在我的问题是如何修改此命令
findstr "PreprocessorDefinitions=.*%D_KEYWORD%" %PROJ% > nul 2>&1
显示所有内容而不是忽略错误消息
答案 0 :(得分:30)
不要使用管道操作员,这就是">"是
所有程序都有三个流程:
命令> nul
^这表示将标准输出流管道为空。
命令2> nul
^这表示将标准错误流传递给null。
命令2>& 1
^这表示将标准错误流传递到与标准输出流相同的位置。