Linux tee命令用于读取标准输入的数据,并将其内容输出成文件。
成都创新互联致力于成都网站建设、成都做网站,成都网站设计,集团网站建设等服务标准化,推过标准化降低中小企业的建站的成本,并持续提升建站的定制化服务水平进行质量交付,让企业网站从市场竞争中脱颖而出。 选择成都创新互联,就选择了安全、稳定、美观的网站建设服务!
tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。
Linux常用基本命令主要包括目录操作命令、文件操作命令、文件查看命令、磁盘管理命令、用户管理命令、系统管理命令等。
目录操作命令:cd、ls、mkdir、pwd、rmdir。
文件操作命令:cp、mv、touch、rm、grep、find、chmod、chown、chgrp、tar、split、gzip、tee、touch、unzip、zip、unrar、scp。
文件查看命令:cat、head、tail、more、nl、diff。
用户管理命令:useradd、usermod、userdel、passwd、su、groupadd、groupdel。
网络通信命令:netstat、route、ftp、sftp、ping、scp、telnet。
系统管理命令:who、uname、top、ps、kill、ifconfig、free、df、du、time、shutdown、reboot、man、last、halt、date、crontab、getconf。
磁盘管理命令:fdisk、mount、umount、sync。
Linux中的tee是一个命令。
主要用途----显示程序的输出并将其复制到一个或多个文件中。
它与重定向命令的不同之处在于达到重定向效果的同时,还能在屏观察输出。
命令格式 tee [参数] [ File ... ]
参数 -a 表示将输出添加到 File 的末尾而不是覆盖写入。
示例
要同时查看和保存一个命令的输出:cat test.c | tee test.tee
它在工作站上显示命令 cat test.c 的标准输出,
同时在文件 test.tee 中保存输出的一个副本。
题主你好,
tee最常用法说白了就是将命令的输出内容输出到终端的同时,还可以将其写入文件.
*.再换句话说就是,我们想要将命令的结果a.打印到终端上让我们看到的同时,还想要将这部分内容b.存到文件中,如果有这个需求,可以使用tee命令.
-----
通常的用法:
命令1 | tee filename //将命令1的结果会被打印到终端的同时,还会在filename中存一份
*.上面用法中,加粗的| tee表示是固定不变的,剩下的命令1和filename是可变的
-----
举个最简单的例子,我们的需求: 将"你好,朋友"打印到终端,并且将其另存到文件friend中.
echo "你好,朋友"
如果光是这样写,则只是将"你好,朋友"输出到了终端上,并没有另存的意思,所以我们引入tee:
echo "你好,朋友" | tee friend
也就是说echo命令把结果,"你好,朋友",传给了命令tee, 而tee做的就是把echo命令传过来的结果给复制一份,一份输出到终端,一份保存到文件friend中.
-----
再啰嗦一句,上面这条命令的处理流程:
echo "你好,朋友" | tee friend--先将echo命令的结果, "你好,朋友" ,通过管道 ,|, 送给tee命令, tee命令将echo命令传过来的结果, "你好,朋友" ,又复制了一份,此时共有两份了,将其中一份显示到终端上; 另一份保存到文件friend中.
-----
测试截图:
第一条命令: 可以看出我当前目录下没有任何文件;
第二条命令: 当该命令执行完,我们看到 "你好,朋友" 被输出到了终端上;
第三条命令: 同时,我们可以看到还在终端下得到了一个名为friend的文件,内容同终端上输出的相同.
注意事项: 此时tee将结果写到friend文件中用的是 覆盖,而非追加, 也就是说我们多次执行这条命令后,friend这个文件中只存在一行 "你好,朋友", 如果我们想要将结果追加到文件friend中,则要给tee加个-a参数,即命令为:
echo "你好,朋友" | tee -a friend
看测试截图:
该截图做了个对比:
上面的就是没有加-a参数的,可以看到命令两次执行完后,friend文件中就只有一行"你好,朋友";
中间我们使用了rm friend将friend文件删掉了,防止产生干扰;
下面两句加了-a参数,可以看到命令两次执行后,friend文件中有两行"你好,朋友".
写在最后: 上面只是描述了tee的常规用法,描述有不到位的地方.对于使用场景现在只能是抽象的说:你一边想要在终端上看到命令产生的结果,又想将该结果保存到文件中供后面查看.
另外, 上面只是tee命令比较常见的用法,并不是其全部的功能.
=====
希望可以帮到题主, 欢迎追问.