批處理輸入輸出
有三個鍵盤輸入的通用「文件」,在屏幕上打印文本和在屏幕上打印錯誤。 標準輸入文件(stdin)包含程序/腳本的輸入。 標準輸出(Standard Out)文件(stdout)被用來寫輸出以顯示在屏幕上。 最後一種叫作stderr
的「標準錯誤」文件包含用於顯示在屏幕上的任何錯誤消息。
這三個標準文件中的每一個(也稱爲標準流)分別使用數字0
,1
和2
進行引用。Stdin是文件0
,stdout是文件1
,stderr是文件2
。
重定向輸出(Stdout和Stderr)
批處理文件中的一種常見做法是將程序的輸出發送到日誌文件。 >
運算符將stdout或stderr發送或重定向到另一個文件。 以下示例顯示瞭如何完成此操作。
dir C:\ > list.txt
在上面的例子中,命令dir C:\
的stdout被重定向到文件list.txt
。
如果將數字2
附加到重定向過濾器,則會將stderr重定向到文件lists.txt
。例如 -
Dir C:\ 2 > list.txt
甚至可以使用文件編號和"&"
前綴來組合stdout和stderr流。 以下是一個例子。
DIR C:\ > lists.txt 2> &1
抑制程序輸出
僞文件NUL
用於丟棄程序的任何輸出。 以下示例顯示通過將輸出發送到NUL
來丟棄命令DIR
的輸出。
Dir C:\ > NUL
STDIN
要使用Stdin,必須使用解決方法來實現此目的。這可以通過重定向命令提示符自己的標準輸入(稱爲CON
)來完成。
以下示例顯示瞭如何將輸出重定向到名爲lists.txt
的文件。 在執行下面的命令後,命令提示符會將用戶輸入的所有輸入都保存到一個EOF
字符中。 稍後,它將所有輸入發送到文件lists.txt
。
TYPE CON > lists.txt