mycommand >mylog.txt 2>&1 應(yīng)該是最經(jīng)典的用法了。
命令的結(jié)果可以通過“%>”的形式來定向輸出,%表示文件描述符:1為標(biāo)準(zhǔn)輸出stdout、2為標(biāo)準(zhǔn)錯(cuò)誤stderr。系統(tǒng)默認(rèn)%值是1,也就是“1>”,而1>可以簡寫為>,也就是默認(rèn)為>。stdout的默認(rèn)目標(biāo)是終端,stderr的默認(rèn)目標(biāo)為也是終端。我們在批處理中執(zhí)行: echo text >result.txt ,我們就可以在屏幕上會(huì)看到 echo text 1>result.txt ,即是這個(gè)道理。
其中&需要直接與重定向符號(hào)結(jié)合使用。
參考:
1、%261"'>http://www.google.cn/search?q="2>%261"
2、http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-chs/library/ServerHelp/04969a04-a424-4776-bdc7-dc5066ce79b2.mspx?mfr=true
應(yīng)用實(shí)例:
1、將結(jié)果輸出到result.txt
net stop myservices >>result 2>&1
2、隱藏程序輸出結(jié)果
net stop myservices >nul 2>nul
可以使用重定向操作符將命令輸入和輸出數(shù)據(jù)流從默認(rèn)位置重定向到其他位置。輸入或輸出數(shù)據(jù)流的位置稱為句柄。
下表將列出可用的句柄。
句柄 | 句柄的數(shù)字代號(hào) | 描述 |
STDIN | 0 | 鍵盤輸入 |
STDOUT | 1 | 輸出到命令提示符窗口 |
STDERR | 2 | 錯(cuò)誤輸出到命令提示符窗口 |
UNDEFINED | 3-9 | 句柄由應(yīng)用程序單獨(dú)定義,它們是各個(gè)工具特有的 |
數(shù)字 0 到 9 代表前 10 個(gè)句柄。可以使用命令 Cmd.exe 運(yùn)行程序,并對該程序前 10 個(gè)句柄中的任何一個(gè)句柄進(jìn)行重定向。要指定要用的句柄,請?jiān)谥囟ㄏ虿僮鞣版I入該句柄的數(shù)字。如果未定義句柄,則默認(rèn)的 < 重定向輸入操作符是 0,而默認(rèn)的 > 重定向輸出操作符是 1。鍵入 < 或 > 操作符之后,必須指定數(shù)據(jù)的讀寫位置。可以指定文件名或其他現(xiàn)有的句柄。
新聞熱點(diǎn)
疑難解答