📜  批处理脚本-输入/输出

📅  最后修改于: 2020-11-22 17:50:17             🧑  作者: Mango


有三个通用的“文件”,用于键盘输入,在屏幕上打印文本和在屏幕上打印错误。 “标准输入”文件称为stdin ,包含程序/脚本的输入。 “标准输出”文件称为stdout ,用于写入输出以在屏幕上显示。最后,“ Standard Err”文件(称为stderr )包含任何错误消息,可在屏幕上显示。

这三个标准文件(也称为标准流)均使用数字0、1和2进行引用。Stdin是文件0,stdout是文件1,stderr是文件2。

重定向输出(Stdout和Stderr)

批处理文件中的一种常见做法是将程序的输出发送到日志文件。 >运算符将stdout或stderr发送或重定向到另一个文件。以下示例显示了如何完成此操作。

Dir C:\ > list.txt

在上面的示例中,命令Dir C:\的标准输出重定向到文件list.txt。

如果将数字2附加到重定向过滤器,则它将stderr重定向到文件list.txt。

Dir C:\ 2> list.txt

甚至可以使用文件号和’&’前缀组合stdoutstderr流。以下是一个示例。

DIR C:\ > lists.txt 2>&1

抑制程序输出

伪文件NUL用于丢弃程序的任何输出。下面的示例显示通过将输出发送到NUL来丢弃命令DIR的输出。

Dir C:\ > NUL

Stdin

要使用Stdin,您必须使用解决方法来实现这一目标。这可以通过重定向命令提示符自己的标准输入(称为CON)来完成。

下面的示例显示如何将输出重定向到名为list.txt的文件。执行以下命令后,命令提示符将接受用户输入的所有输入,直到获得EOF字符。稍后,它将所有输入发送到文件list.txt。

TYPE CON > lists.txt