批处理 这条命令把执行结果都放在了哪儿

callmake.batArg1>%MBTS_CODE_ROOT_DIR%\make.txt2>&1主要后最后的&1是什么意思... call make.bat Arg1 > %MBTS_CODE_ROOT_DIR%\make.txt 2>&1
主要后最后的&1是什么意思
展开
 我来答
百度网友dadee7f
推荐于2016-02-02 · TA获得超过1869个赞
知道小有建树答主
回答量:867
采纳率:67%
帮助的人:381万
展开全部
call make.bat Arg1 > %MBTS_CODE_ROOT_DIR%\make.txt 2>&1 是指:
如果make.bat Arg1正常运行,结果输出到%MBTS_CODE_ROOT_DIR%\make.txt文件中,如果有错误信息,同样将错误信息输出到make.txt文件中,而不是只显示在命令提示符窗口中!

先说下1和2:
1、2是系统默认的句柄代号(还有个0)。
0代表STDIN,标准输入句柄,通常情况下该句柄即为键盘;1代表STDOUT,标准输出句柄,当命令正常运行时结果输出到这个句柄,句柄1通常情况下就是cmd窗口 ;2代表STDERR,标准错误句柄,当命令发生错误时,系统将错误信息输出到这个句柄,默认情况下该句柄也是cmd窗口。

>是重定向符,可以将某些内容输出到外部文件中,如 >make.txt 就表示将结果输出到make.txt。但实际上>make.txt是1>make.txt的缩写,表示将句柄1的结果(程序正常运行时的结果)输出到make.txt中,如果程序出错,cmd窗口中会显示错误信息。

>&也是重定向符,只不过它是用来重定向句柄的,2>&1表示将句柄2(stderr)的结果输出到句柄1(stdout)中。前面“>make.txt”已经将句柄1重定向到make.txt中了,因此2>&1这么一重定向,句柄2的结果只能同样输出到make.txt中了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式