为初学者介绍的 Linux tee 命令(6 个例子)

有时候,你会想手动跟踪命令的输出内容,同时又想将输出的内容写入文件,确保之后可以用来参考。如果你想寻找这相关的工具,那么恭喜你,Linux 已经有了一个叫做 tee 的命令可以帮助你。

本教程中,我们将基于 tee 命令,用一些简单的例子开始讨论。但是在此之前,值得一提的是,本文我们所有的测试实例都基于 Ubuntu 16.04 LTS。

Linux tee 命令

tee 命令基于标准输入读取数据,标准输出或文件写入数据。感受下这个命令的语法:

这里是帮助文档的说明:

让 Q&A(问&答)风格的实例给我们带来更多灵感,深入了解这个命令。

Q1. 如何在 Linux 上使用这个命令?

假设因为某些原因,你正在使用 ping 命令。

如何在 Linux 上使用 tee 命令

然后同时,你想要输出的信息也同时能写入文件。这个时候,tee 命令就有其用武之地了。

下面的截图展示了这个输出内容不仅被写入 ‘output.txt’ 文件,也被显示在标准输出中。

tee command 输出

如此应当明确了 tee 的基础用法。

Q2. 如何确保 tee 命令追加信息到文件中?

默认情况下,在同一个文件下再次使用 tee 命令会覆盖之前的信息。如果你想的话,可以通过 -a 命令选项改变默认设置。

基本上,-a 选项强制 tee 命令追加信息到文件。

Q3. 如何让 tee 写入多个文件?

这非常之简单。你仅仅只需要写明文件名即可。

比如:

如何让 tee 写入多个文件

Q4. 如何让 tee 命令的输出内容直接作为另一个命令的输入内容?

使用 tee 命令,你不仅可以将输出内容写入文件,还可以把输出内容作为另一个命令的输入内容。比如说,下面的命令不仅会将文件名存入‘output.txt’文件中,还会通过 wc 命令让你知道输入到 output.txt 中的文件数目。

如何让 tee 命令的输出内容直接作为另一个命令的输入内容

Q5. 如何使用 tee 命令提升文件写入权限?

假如你使用 Vim editor 打开文件,并且做了很多更改,然后当你尝试保存修改时,你得到一个报错,让你意识到那是一个 root 所拥有的文件,这意味着你需要使用 sudo 权限保存修改。

如何使用 tee 命令提升文件写入权限

如此情况下,你可以使用 tee 命令来提高权限。

上述命令会向你索要 root 密码,然后就能让你保存修改了。

Q6. 如何让 tee 命令忽视中断?

-i 命令行选项使 tee 命令忽视通常由 crl+c 组合键发起的中断信号(SIGINT)。

当你想要使用 crl+c 中断命令的同时,让 tee 命令优雅的退出,这个选项尤为实用。

总结

现在你可能已经认同 tee 是一个非常实用的命令。基于 tee 命令的用法,我们已经介绍了其绝大多数的命令行选项。这个工具并没有什么陡峭的学习曲线,所以,只需跟随这几个例子练习,你就可以运用自如了。更多信息,请查看 帮助文档.


via: https://www.howtoforge.com/linux-tee-command/

作者:Himanshu Arora
译者:CYLeft
校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出

Hello world!
文章已创建 196

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部