Linux系统中tee命令的具体用法

特约名表维修

特约名表维修

2016-02-19 20:55

下面请跟着图老师小编一起来了解下Linux系统中tee命令的具体用法,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

Linux下tee命令主要用于将管道导入的数据存成文件,那么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][文件。。。]

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

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 ~]#

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

示例二 使用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 ~]#

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

[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 ~]#

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

上面就是Linux下tee命令的用法介绍了,通过实例我们将更好的理解该命令的作用,并灵活用于实际当中,你学会了吗?

展开更多 50%)
分享

猜你喜欢

Linux系统中tee命令的具体用法

电脑入门
Linux系统中tee命令的具体用法

Linux系统中hexdump命令的用法汇总

电脑入门
Linux系统中hexdump命令的用法汇总

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

SUSE Linux系统中zypper命令用法汇总

电脑入门
SUSE Linux系统中zypper命令用法汇总

Linux中ifconfig命令用法汇总

电脑入门
Linux中ifconfig命令用法汇总

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Linux中cron命令的用法详解

服务器
Linux中cron命令的用法详解

Linux中ldd命令的用法详解

电脑入门
Linux中ldd命令的用法详解

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

C++程序设计从零开始之赋值操作符

C++程序设计从零开始之赋值操作符

水滴石穿C语言之可变参数问题

水滴石穿C语言之可变参数问题
下拉加载更多内容 ↓