举个例子, 如:命令正确执行就是句柄1, 命令执行不成功就是句柄2.
请先运行这一段代码试试:
@echo off
dir /b ???.txt>file.txt
pause
运行后cmd窗口显示找不到文件. file.txt文件为空.
这说明命令正确执行返回的数据将重定向到file.txt中(也就是句柄1), 因为找不到文件句柄1也没有数据写入文本.
而执行不成功将显示错误信息, 也就是找不到文件(为句柄2)
这一段是句柄2的复制到句柄1.
运行后cmd窗口没有任何信息显示, 而找不到文件的提示会写入到file.txt中. 很显然句柄2被复制到句柄1中写入file.txt中.
@echo off
dir /b ???.txt>file.txt 2>&1
pause
我也不知道分析得对不对, 期待高手出来解惑...