详解Linux tee命令:将命令的输出复制到文件和屏幕

  • Post category:Linux

当我们在 Linux 中执行命令时,通常情况下会将命令的输出结果直接输出到终端上。但实际上,有时候我们可能需要将命令的输出结果保存到文件中,或者同时输出到终端和文件中,这时候就可以使用 Linux tee 命令。

1. tee 命令的作用

Linux tee 命令用于从标准输入中读取数据,并将其重定向到标准输出和一个或多个文件中。简单来说,tee 命令的作用就是将命令的输出结果分流到终端和指定的文件中。

2. tee 命令的使用方法

tee 命令的基本语法如下:

command | tee [OPTIONS] [FILE1] [FILE2] ...

其中,command 为要执行的命令,| 用于链式操作,tee 为命令本身,OPTIONS 为可选的选项参数,FILE1FILE2 … 为要输出的文件名。

tee 命令常用的选项参数如下:

  • -a 选项表示追加输出到文件中,而非覆盖。
  • -i 选项表示即使文件只读,也是可以覆盖输出的。
  • -p 选项表示不缓冲输出(默认情况下会有缓冲区)。

下面是一些使用 tee 命令的示例:

示例1:将命令输出到文件中

$ ls /etc | tee output.txt

上述命令会将 /etc 目录下的文件列表输出到终端,并将该列表保存到 output.txt 文件中。

示例2:将命令输出同时输出到终端和文件中

$ ps aux | tee ps_output.txt

上述命令会将当前系统进程列表输出到终端,同时将该列表保存到 ps_output.txt 文件中。

3. 总结

Linux tee 命令可以方便地将命令的输出结果保存到文件中,或者同时输出到终端和指定的文件中。使用 tee 命令时,可以结合选项参数来实现不同的功能。常见的选项参数包括 -a-i-p 等。