linux tee命令?Linux中tee命令
大家好,如果您还对linux tee命令不太了解,没有关系,今天就由本站为大家分享linux tee命令的知识,包括Linux中tee命令的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
linuxtee命令使用详解
tee命令的功能说明:tee指令可以从标准输入读取数据,并将内容输出到标准输出以及文件中。
语法说明:tee [选项] [文件...]
补充说明:当使用tee命令时,可以从标准输入读取数据,并将内容同时输出到标准输出和文件。如果指定文件不存在,则会创建该文件;如果文件已存在,则会覆盖原有内容,除非使用append选项。
参数说明:
-a或者--append:将数据追加到指定文件的末尾,而不是覆盖。
-i或者--ignore-interrupts:忽略中断信号。
--help:显示帮助信息。
--version:显示版本信息。
常用示例:
1.仅将标准输入的内容输出到标准输出,因为没有指定文件。
2.将标准输入的内容输出到标准输出和一个名为file的文件中。如果file不存在,则创建;如果已存在,则覆盖。
3.将标准输入的内容追加到一个名为file的文件中。如果file不存在,则创建;如果已存在,则在文件末尾追加内容,而不是覆盖。
4.将标准输入的内容输出到标准输出两次。
5.将标准输入的内容输出到标准输出两次,并分别保存到file1和file2中。
示例补充:
示例一:tee命令与重定向的对比
seq 5> 1.txt#生成一个数字序列文件
cat 1.txt#输出文件内容
cat 1.txt 2.txt#输出两个文件内容
cat 1.txt| tee 3.txt#输出到标准输出和一个文件
cat 2.txt#输出第二个文件内容
cat 3.txt#输出通过tee的文件内容
示例二:使用tee命令重复输出字符串
echo"12345"| tee#输出字符串到标准输出和文件
echo-n"12345"| tee#输出字符串到标准输出和文件,不换行
示例三:使用tee命令把标准错误输出也保存到文件
ls"*" 2> ls.txt#把标准错误输出保存到文件
cat ls.txt#显示错误信息文件内容
linux tee命令详解
tee命令是linux下的一个文件管理命令,tee命令主要有一个功能,具体介绍如下:
tee命令可以从标准输入设备读取数据,将其内容输出到标准输出设备,同时还能保存成文件。
参考范例:
如果使用指令”tee”将用户输入的数据同时保存到文件”file1″和”file2″中,具体命令为:
[root@linuxcool~]# tee file1 file2
tee命令的具体语法格式为tee [参数] [文件]。
参数:
-a附加到既有文件的后面,而非覆盖它
-i忽略中断信号
— help查看帮助信息
— version显示版本信息
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"*" 21| 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"*" 21| tee ls.txt
ls:*:没有那个文件或目录
[root@web~]# cat ls.txt
ls:*:没有那个文件或目录
[root@web~]#