在执行Linux命令时,我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用tee命令。接下来是小编为大家收集的linux tee 命令使用详解教程,希望能帮到大家。

linux tee 命令使用详解教程

tee

功能说明:读取标准输入的数据,并将其内容输出成文件。

语   法:tee [-ai][--help][--version][文件…]

补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。我们可利用tee把管道导入的数据存成文件,甚至一次保存数份文件。

参   数:-a 附加到既有文件的后面,而非覆盖它。如果给予tee指令的文件名称已经存在,预设会覆盖该文件的内容。加上此参数后,数据会新增在该文件内容的最后面,而不会删除原先之内容。

-i 忽略中断信号

--help 在线帮助

--version 显示版本信息

范   例:

列出文本文件slayers.story的内容,同时复制3份副本,文件名称分别为ss-copy1、ss-copy2、ss-copy3:

$ cat slayers.story |tee ss-copy1 ss-copy2 ss-copy3

tee [-ai][--help][--version][文件...]

【功能】

tee以标准输入作为输入,标准输出和文件作为输出。

【举例】

tee file //覆盖

tee -a file //追加

tee - //输出到标准输出两次

tee - - //输出到标准输出三次

tee file1 file2 - //输出到标准输出两次,并写到那两个文件中

ls | tee file

另:把标准错误也被tee读取

ls "*" 2>&1 | tee ls.txt

*用tee生成一个文件,包含你敲入的内容:

复制代码

代码如下:

$tee testfile

这样,会提示要你用标准输入输入内容,然后敲回车会将你输入的内容写入testfile和输出到标准输出,如果用[Ctrl]d结束输入([Ctrl]c也行)。如果原来testfile有内容,将会覆盖。

*把内容追加到文件的末尾行:

复制代码

代码如下:

$tee -a testfile

结果类似上,不过如果原来testfile有内容则不会覆盖而是追加。

*生成一个文件,敲入的时候,不接受中断信号:

复制代码

代码如下:

$tee -i testfile

结果同testfile,不过不会接收中断信号,只能用[Ctrl]d结束,而不能用[Ctrl]c了。

*执行ls列出目录文件同时将输出保存到文件test中:

复制代码

代码如下:

$ls | tee test

这样,会像平时一样执行ls命令并将当前目录的文件名输出到标准输出。另外由于进行了tee命令,所以会生成一个test文件,这个test文件的内容和标准输出的内容一样。

【描述】

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。可以用于既想看到标准输出,又想将标准输出保存到文件中的情况。

参数:

-a或--append  附加到既有文件的后面,而非覆盖它.

-i-i或--ignore-interrupts  忽略中断信号。

--help  在线帮助。

--version  显示版本信息。

常用参数

格式:tee

只输出到标准输出,因为没有指定文件嘛。

格式:tee file

输出到标准输出的同时,保存到文件file中。如果文件不存在,则创建;如果已经存在,则覆盖之。(If a file being written to does not already exist, it is created. If a file being written to already exists, the data it previously

contained is overwritten unless the `-a' option is used.)

格式:tee -a file

输出到标准输出的同时,追加到文件file中。如果文件不存在,则创建;如果已经存在,就在末尾追加内容,而不是覆盖。

格式:tee -

输出到标准输出两次。(A FILE of `-' causes `tee' to send another copy of input to standard output, but this is typically not that useful as the copies are interleaved.)

格式:tee file1 file2 -

输出到标准输出两次,同时保存到file1和file2中。

使用示例补充:

示例一 tee命令与重定向的对比

[root@web ~]# seq 5 >1.txt

[root@web ~]# cat 1.txt

1

2

3

4

5

[root@web ~]# cat 1.txt >2.txt

[root@web ~]# cat 1.txt | tee 3.txt

1

2

3

4

5

[root@web ~]# cat 2.txt

1

2

3

4

5

[root@web ~]# cat 3.txt

1

2

3

4

5

[root@web ~]# cat 1.txt >>2.txt

[root@web ~]# cat 1.txt | tee -a 3.txt

1

2

3

4

5

[root@web ~]# cat 2.txt

1

2

3

4

5

1

2

3

4

5

[root@web ~]# cat 3.txt

1

2

3

4

5

1

2

3

4

5

[root@web ~]#

示例二 使用tee命令重复输出字符串

[root@web ~]# echo 12345 | tee

12345

[root@web ~]# echo 12345 | tee -

12345

12345

[root@web ~]# echo 12345 | tee - -

12345

12345

12345

[root@web ~]# echo 12345 | tee - - -

12345

12345

12345

12345

[root@web ~]# echo 12345 | tee - - - -

12345

12345

12345

12345

12345

[root@web ~]#

[root@web ~]# echo -n 12345 | tee

12345[root@web ~]# echo -n 12345 | tee -

1234512345[root@web ~]# echo -n 12345 | tee - -

123451234512345[root@web ~]# echo -n 12345 | tee - - -

12345123451234512345[root@web ~]# echo -n 12345 | tee - - - -

1234512345123451234512345[root@web ~]#

示例三 使用tee命令把标准错误输出也保存到文件

[root@web ~]# ls "*"

ls: *: 没有那个文件或目录

[root@web ~]# ls "*" | tee -

ls: *: 没有那个文件或目录

[root@web ~]# ls "*" | tee ls.txt

ls: *: 没有那个文件或目录

[root@web ~]# cat ls.txt

[root@web ~]# ls "*" 2>&1 | tee ls.txt

ls: *: 没有那个文件或目录

[root@web ~]# cat ls.txt

ls: *: 没有那个文件或目录

[root@web ~]#

看了“linux tee 命令使用详解教程”还想看:

linux tee错误日志,linux tee命令使用详解教程相关推荐

  1. Linux服务端开发——Linux中stat函数和stat命令使用详解

    这篇文章主要介绍了Linux中stat函数和stat命令使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 stat函数和s ...

  2. linux为什么用tar压缩,linux下tar压缩和解压命令用法详解

    linux下tar压缩和解压命令用法详解 2017-03-25 14:06 分享人:老牛 将/usr/local/test目录下所有文件仅打包,不压缩到 /usr/local/auto_bak/目下 ...

  3. linux java 创建目录结构_linux mkdir命令创建目录详解

    首页 > Linux教程 > 常用命令 > mkdir 创建目录 linux mkdir命令创建目录详解 linux中mkdir命令可以实现在指定位置创建文件夹或目录.要创建文件夹或 ...

  4. route命令linux详解,Linux系统运维关于route命令的详解

    Linux系统运维涉及到各方面的知识,比如工作中需要测试网络环境,本文介绍Linux系统运维关于Linux测试工具route的使用方法,希望能给大家的工作带来一定更多帮助. 在配置网络时,要为机器指定 ...

  5. 2、MySQL错误日志(Error Log)详解

    错误日志(Error Log)是 MySQL 中最常用的一种日志,主要记录 MySQL 服务器启动和停止过程中的信息.服务器在运行过程中发生的故障和异常情况等. 作为初学者,要学会利用错误日志来定位问 ...

  6. mysql 错误日志_MySQL错误日志(Error Log)详解

    错误日志(Error Log)是 MySQL 中最常用的一种日志,主要记录 MySQL 服务器启动和停止过程中的信息.服务器在运行过程中发生的故障和异常情况等. 作为初学者,要学会利用错误日志来定位问 ...

  7. linux下history(历史)命令用法详解

    如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率.本文将通过实例的方式向你介绍 history 命令的15个用法. 1. 使用 HISTTIMEFORMA ...

  8. linux怎么安装scp服务,linux下ssh安装与scp命令使用详解

    ubuntu默认并没有安装ssh服务,可以通过如下命令进行: 复制代码 代码如下: yblin@yblin-desktop:~$ ssh localhost ssh: connect to host ...

  9. 使用ls命令查看Linux的目录结构,linux查看工作目录文件ls命令用法详解

    查看工作目录文件ls ls命令是Linux下最常用的命令.ls命令就是list的缩写.默认情况下ls用来查看当前目录的清单,如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单.通过ls命令 ...

最新文章

  1. 图像识别落地机会最多 腾讯全面输出视觉AI
  2. java中的集合_Java中集合中的基本概念
  3. Py之matplotlib:python包之matplotlib库图表绘制包的简介、安装、使用方法(matplotlib颜色大全)详细攻略
  4. nyoj-括号匹配(二)---动态规划
  5. android获取本地图片后缀,Android向图片文件添加扩展信息EXIF如地点,时间,人物等...
  6. P2000-拯救世界【生成函数,NTT】
  7. (计算机组成原理)第五章中央处理器-第四节3:微指令的设计
  8. 专业Excel组件Spire.XLS 教程:在Excel中合并单元格
  9. wxWindows入门
  10. android 收货地址功能,22、【收货地址管理模块】——收货地址增、删、改、查、分页列表、地址详情的功能开发...
  11. python 加注拼音-python汉字注音
  12. 未能连接到imap服务器,roundcube无法连接imap服务器登录
  13. LIO-SAM:点云预处理前端---畸变矫正数据预处理
  14. 最短路径问题——Dijkstra算法详解(单源最短路径)
  15. 苹果第一台计算机的诞生的,纪念Mac诞生30周年:第一台Mac电脑深度拆解
  16. USACO Section 1.1 Broken Necklace
  17. 《简约至上》读书笔记
  18. Obsidian_常用三方插件
  19. Winscp连接Ubuntu
  20. Windows编译libjpeg库

热门文章

  1. mysql双机配置_mysql 双机热备配置详解
  2. Delphi7简单DirectUI界面源码
  3. Vue+springboot居民户籍居住证管理系统
  4. 谈谈我对Harbor认识
  5. 盛景网联:从培训公司到资本大鳄
  6. es6 import和require用法和区别
  7. 显示 256 色的位图
  8. 魏晋南北朝:北国飘雪(二)
  9. 如何更加方便地视频编辑,拍摄的视频总是抖的解决办法
  10. 基于.NET的微软ORM框架视频教程(Entity Framework技术)