|
Tee命令是一个命令行工具,它从标准输入读取数据,同时将结果打印到文件中和标准输出到屏幕中。 Tee 命令语法 $ g8 Y V2 u& P, R% etee 选项 文件名7 i; x4 a, S0 j$ c# T <以上代码可复制粘贴,可往左滑> . n4 l& p9 T: w# Z * [) }- o) Q! F" B# ]) d- M8 t实例一:基本方式 9 s* ~5 W$ [2 H _. u- O tee命令的主要功能是显示命令的输出并将其保存到一个文件中。在下面的示例中,我们检查系统中的块设备并将结果发送到tee命令,tee命令将输出显示到终端,同时将其保存在devices.txt的文件中:<以上代码可复制粘贴,可往左滑> ( @$ e [) f: d5 S/ T
可以使用cat命令检查devices.txt文件的内容,如下所示: <以上代码可复制粘贴,可往左滑> 2 \) t5 \1 b, H) {7 n% _
" a( S& ]) o0 ~+ M/ h3 D: Z0 A 实例二:命令输出写入多个文件 ) u- |# a; u, d1 c& i7 ]7 [$ F8 k' {- J w* @ [root@localhost ~]# hostnamectl | tee file1.txt file2.txt<以上代码可复制粘贴,可往左滑> 9 u+ T% ]7 ~/ @# c$ v D! a
实例三:静默输出到文件 <以上代码可复制粘贴,可往左滑>
+ G& Q5 N& ?. J6 ? # \/ {* N5 T* U% ^( u实例四:在文件中追加输出 [root@localhost ~]# date | tee -a file1.txt [root@localhost ~]# cat file1.txt : D+ S* Y1 a$ X. ?* u; m" x <以上代码可复制粘贴,可往左滑>
实例五:tee命令和sudo一起使用 / q* ~# _8 \* ^0 b4 j假设只可以用一个sudo用户,希望写入root用户拥有权限的文件。任何提升操作都需要在命令之前调用sudo用户。要实现这一点,只需在tee命令前面加上sudo,如下所示: <以上代码可复制粘贴,可往左滑> . d$ u9 O0 J6 C7 ]+ S! V
6 G G! W# z7 r2 Z( g 1 ]& i$ H J6 `7 n" Y: v1 M实例六:将一个命令的输出重定向到另一个命令 9 C: k8 q, Q% r' Y' O9 s& N [root@localhost ~]# grep 'root' /etc/passwd | tee /tmp/passwd.tmp | wc -l* w4 _ O. \! r% t. n" ^8 h# \2 [root@localhost ~]# cat /tmp/passwd.tmp ( m% k1 P& b/ h7 s2 _- H root:x:0:0:root:/root:/bin/bash" z! `. I4 s2 l/ b. { operator:x:11:0 perator:/root:/sbin/nologin[root@localhost ~]# <以上代码可复制粘贴,可往左滑> 3 ?8 R# j" ^* t# K/ ^
实例七:在vim编辑器中使用tee - U d- |0 r" B) K8 R) |1 l9 w% n( ] 假设你是一个非root用户,你正在修改root用户拥有的文件,忘记使用sudo权限打开文件,现在你想保存更改,示例如下:<以上代码可复制粘贴,可往左滑> % N! a0 @' {2 T4 K
现在要将更改保存到vim编辑器中的/etc/hosts文件,请运行: : x1 {" e& i1 k Q :w !sudo tee %, }" O0 p' v! z. Z# M<以上代码可复制粘贴,可往左滑> 8 d! Y$ G' Q& l9 G
上面提示输入用户的密码,输入完成之后即可保存成功。 总 结 Tee命令是一个命令行工具,它从标准输入读取数据,同时将结果打印到文件中和标准输出到屏幕中。( D, D6 f7 n6 G- c |
微信公众号
手机版