tee 命令用于存储和查看任何命令的输出。 在本文中,我们将介绍该命令的一些基本用法。 在我们开始之前,这里有一个关于这个命令的有趣事实:它以管道中常用的 T 形分离器命名。 在 tee 命令的帮助下,用户会发现他们必须输入更少的内容才能完成更多的工作。
目录
tee 命令的基本用法
tee 命令基本上将程序的输出分成两个流程,以便既可以查看也可以将其保存在文件中。 它同时执行两项任务: 在屏幕上显示结果 也 将输出复制到外部文件中.
与大多数命令不同,tee 命令不会简单地开始。 我的意思是你不能只使用 tee 命令作为“tee filename.txt”,它会简单地删除整个文件内容。 用户应该做的是首先使用一些命令,然后将其传递到 tee 命令,然后是输出文件。 一个 example 将会:
echo "this is a simple example using the tee command" | tee out.txt
执行上述命令后,用户将能够在他/她的标准输出中看到 echo 命令的输出,并查看在当前目录中创建的 out.txt 文件。 如果您使用 cat 命令并查看内容,您会发现它只是在标准输出中显示给您的输出。 这样,用户既可以看到标准输出,也可以同时将其保存在文件中。 我们可以通过对 out.txt 文件运行 cat 命令来验证结果:
您可以运行以下命令来执行相同的操作,但是您将运行两个命令,而当您只能运行一个时,为什么还要运行两个?
Linux 中的回显命令
echo "this is a simple example using the tee command" > out.txt && cat out.txt
附加到现有的 tee 命令输出文件
用户可以使用 -a 标志附加到已经存在的 tee 输出文件。 结果命令如下:
echo "This is a follow-up example of the tee command" | tee -a out.txt
上面的代码会在我们之前创建的 out.txt 中产生一个后续行。
tee 命令的重要用例
tee 命令并不为太多 Linux 用户所了解,但它在以下一些用例中仍然具有价值。 让我们仔细看看。
有时你可能会在使用 vim 时发现,在打开一个文件并进行一些编辑后,你无法按文件要求写入文件 sudo 特权。 然后我们无助地退出vim,再次打开它 sudo 这一次,走自己的路吧。 但这就是 tee 命令的亮点。 我们可以在 vim 中执行以下命令写入需要的文件 sudo 特权:
:w !sudo tee %
如果你按回车,它会要求 sudo 密码,输入密码后你就可以开始了!
另一种情况是您希望将某些输出重定向到受保护的文件。 只需使用我们之前在第一个中使用的 tee 命令 example但给出 tee 命令 sudo 特权:
echo "this is a simple example using the tee command" | sudo tee protected_file.txt
概括
这就是 tee 命令。 希望您发现这篇文章很有用,并期待 Linux For Devices 的更多内容。 此外,不要忘记经常查阅手册页以了解有关任何命令的更多信息。 要了解有关 Linux 命令的更多信息,请查看此链接。