linux 双向重定向之 tee 命令
tee 的作用是将一份标准输入多重定向,一份重定向到标准输出/dev/stdout,然后还将标准输入重定向到每个文件 FILE 中。
在执行 Linux 命令时,我们可以把输出重定向到文件中,比如 ls >rumenz.txt,这时不能看到输出了,如果我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用 tee 命令了.
tee 流程示意图
命令语法
复制代码
保存当前目录文件列表到文件并打印到屏幕
复制代码
rumenz.txt
里面也有相同的内容
tee 命令追加信息到文件中
默认是覆盖写入,
-a
是追加写入到目标文件
复制代码
tee 写入多个文件
复制代码
让 tee 命令的输出内容直接作为另一个命令的输入内容
tee 命令,你不仅可以将输出内容写入文件,还可以把输出内容作为另一个命令的输入内容。比如说,下面的命令不仅会将文件名存入
rumenz.txt
文件中,还会通过 wc 命令让你知道输入到rumenz.txt
中的文件数目
复制代码
tee 命令提升文件写入权限
很多时候我们使用非 root 账号修改了一个文件,正要保存的时候,vim 抛出以下错误,直接退出的话,就会丢失掉修改
复制代码
这个时候我们就可以用 tee 来提升权限保存文件
复制代码
root 密码,然后就能让你保存修改了
总结
tee 命令读取标准输入,把这些内容同时输出到标准输出和(多个)文件中,tee 命令可以重定向标准输出到多个文件。要注意的是:在使用管道线时,前一个命令的标准错误输出不会被 tee 读取。
原文链接:https://rumenz.com/rumenbiji/linux-tee.html
微信公众号:入门小站
版权声明: 本文为 InfoQ 作者【入门小站】的原创文章。
原文链接:【http://xie.infoq.cn/article/2ad59e107f15f88b29098935a】。文章转载请联系作者。
评论