tee和脚本本质上等效吗?

Mic*_*ald 3 shell monitoring tee

在要捕获文件中进程的标准输出但仍要在终端中显示此输出的情况下,可以在script和之间进行选择tee。在这种情况下,这些工具在本质上是等效的,还是有(可能是微妙的)理由偏爱一种?


这些程序scripttee设计用于不同的目的:

  • script -制作终端会话的打字稿
  • tee - 管道配件

script和之间的重要区别tee是:

  • script传送它监督的进程的退出状态,而tee作为过滤器甚至不知道它。
  • script捕获其监视的进程的stdinstdoutstderr,而tee仅捕获其过滤的流。

在给定的上下文中,这些差异均不相关。

Wol*_*lph 5

它们的用途非常不同,用法也完全不同。

  • 脚本是用来记录您在Shell会话中正在执行的操作。方便向教授展示您的工作,向同事展示如何做某事,等等。

  • Tee只是一个可同时写入屏幕和文件的应用程序。在安装某些东西或运行生成大量输出并希望实时查看输出同时仍将其保存到磁盘的命令时非常方便。

两者之间的一个显着区别是,您可以使用脚本创建一个交互式外壳来记录script commands.log zsh包括颜色等在内的所有内容(例如)。Tee不会注册为tty,因此就这点而言非常不同。