这个页面中的例子和解释让我感到困惑:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/redirection.mspx?mfr=true
使用2 <&1和2>&1有什么实际的区别? 第二种forms(2>&1)对于我来说是熟悉的,从与Unix shell的工作。
上面链接的页面有:
要查找File.txt,然后将句柄1(即STDOUT)和句柄2(即STDERR)redirect到Search.txt,请键入:
findfile file.txt> search.txt 2 <&1
并且
要将所有输出(包括句柄2(即STDERR))从ipconfig命令redirect到处理1(即STDOUT),然后将输出redirect到Output.log,请键入:
ipconfig.exe >> output.log 2>&1
最后,结果有没有什么不同?
一些例子应该显示发生了什么:
c:\YourDir> cd FolderNotHere > nul The system cannot find the path specified.
你得到错误流
c:\YourDir>cd FolderNotHere > nul 2>&1
你什么都得不到,错误流转到std输出流去null。
c:\YourDir>cd > nul
你什么都得不到,输出流变为空。
c:\YourDir>cd > nul 1>&2 c:\YourDir
你得到的标准输出已经发送到错误流,所以它不会被重定向。
c:\YourDir>cd > nul 1<&2
这跟1>&2是一样的