查看原文
其他

每天学一个 Linux 命令(105):tee

点击关注👉 民工哥技术之路 2021-12-16

点击下方“民工哥技术之路”,选择“设为星标”

回复“1024”获取独家整理的学习资料!

命令简介

tee 命令用于从标准输入读取,然后写入文件或标准输出和文件。一般用于需要同时查看数据内容并输出到文件时使用。

语法格式

tee [OPTION]... [FILE]...

选项说明

-a   #追加到文件中而不是覆盖
-i   #忽略中断信号(Ctrl+c中断操作无效)
-p   #诊断写入非管道的错误
--output-error[=MODE]    #设置写错误时的行为
--help                   #显示帮助信息并退出
--version                #显示版本信息并退出

MODE参数

'warn'           #当写入到任何输出报错时诊断
'warn-nopipe'    #当写入到任何输出(而不是管道)报错时诊断
'exit'           #当写入到任何输出报错时退出
'exit-nopipe'    #当写入到任何输出(而不是管道)报错时退出

应用举例

列出当前目录中所有文件扩展名为.tar.gz的文件,每行一个文件, 然后将内容传输给 wc 对行进行计数并输出数字。通过管道传输到 tee 后再将输出写入终端,并将相同的信息写入文件 tee.txt。如果 tee.txt 已经存在,它将被覆盖,如果不存在,将被创建。

[root@centos7 ~]# ls -l *.tar.gz
-rw-r--r-- 1 root root 13034487 Aug 30  2020 goInception-linux-amd64-v1.2.3.tar.gz
-rw-r--r-- 1 root root  9363314 Aug  5  2020 httpd-2.4.46.tar.gz
-rw-r--r-- 1 root root 31674465 Mar 10 09:42 mysql_backup.tar.gz
-rw-r--r-- 1 root root   398872 Mar 28 00:11 netcat-0.7.1.tar.gz
[root@centos7 ~]# ls -l *.tar.gz | wc -l
4
[root@centos7 ~]# ls -l *.tar.gz | wc -l | tee tee.txt
4
[root@centos7 ~]# cat tee.txt
4

tee.txt 已经存在,它将被覆盖

[root@centos7 ~]# cat tee.txt 
4
[root@centos7 ~]# ls -1 *.txt | wc -l 
3
[root@centos7 ~]# ls -l *.txt | wc -l |tee tee.txt
3
[root@centos7 ~]# cat tee.txt 
3

追加内容

[root@centos7 ~]# cat tee.txt 
3
[root@centos7 ~]# ls -1 *.tar.gz | wc -l
4
[root@centos7 ~]# ls -1 *.tar.gz | wc -l | tee -a tee.txt
4
[root@centos7 ~]# cat tee.txt 
3
4

每天学一个 Linux 命令(101):pstree

每天学一个 Linux 命令(102):tac

每天学一个 Linux 命令(103):dstat

推荐阅读 点击标题可跳转

这款 Web SSH 客户端工具超牛逼!爱了

超实用!送你 11 个 Git 使用技巧,个个惊艳

全网最新、最详细的部署最小化 K8S 集群教程

技术公司与非技术公司的区别,太真实了…

武汉最最最牛逼的 IT 公司全在这了

使用 AutoSSH 实现自动化跨网络访问

Kubernetes 前世今生( 附学习导图 )

MySQL 与 PostgreSQL 比较,哪个更好、用哪个?

精心整理!面试必问的 kafka 知识点

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存