批处理输入输出
精华
小牛编辑
116浏览
2023-03-14
有三个键盘输入的通用“文件”,在屏幕上打印文本和在屏幕上打印错误。 标准输入文件(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