在 UNIX 和 Linux 系统上捕获屏幕快照和程序交互: 第 1 部分,程序交互
2010-10-09 08:53:20 来源:WEB开发网将 ls 程序的标准输出写到 /bin/sh、/bin/bash、/bin/csh 和 /bin/ksh shell 中的 file1 文件中:
ls > file1
将 ls 程序的错误输出写到 /bin/sh、/bin/bash、/bin/csh 和 /bin/ksh shell 中的 file1 文件中:
ls 2> file1
(如果您使用的是 /bin/csh shell,没有容易的方式只把错误消息重定向到文件中。)
将 ls 程序的标准输出和错误输出都写到 /bin/sh、/bin/bash、/bin/csh 和 /bin/ksh shell 中的 file1 文件中:
ls &> file1
将 ls 程序的标准输出写到 file1 文件,将该程序的错误输出写到 /bin/sh、/bin/bash 和 /bin/ksh shell 中的 file2 文件中:
ls 1> file1 2> file2
Shell 重定向可以方便地将标准程序输出、程序错误消息或者这两者捕获到文本文件。但是如果您真正想要做的是捕获用户与程序的交互,那么这还不够。为此,您可以利用 shell 的 交互式功能和一种附加类型的输出重定向(叫做 管道)。
使用交互式 shell 捕获程序交互
前一节展示了如何将用户交互的特定方面写到特定的文件,如果您在试图捕获调试输出、程序使用信息等等,那么这是有帮助的。但是如果您在为应用程序编写文档,或者只是记录使用或试验某个应用程序,那么您想要看到您为程序提供的输入(标准输入 或 stdin 的一个例子),以及应用程序对该输入的反应。本文最后两节讨论为此目的设计的一些应用程序。本节主要关注,只使用自己喜欢的 shell、一种附加类型的 shell 重定向(叫做管道)和一个标准的 UNIX 或 Linux 实用工具(叫做 tee),是如何捕获程序交互的。
更多精彩
赞助商链接