Linux cat 命令的用法示例和技巧
cat 命令用于在控制台标准输出上显示基本的文本文件。如果提供多个文件名作为输入,则会将它们的内容附加起来并显示出来。
cat 命令使用上比较简单,本文也会介绍 cat 的其它一些用法。
如何使用
cat 命令通常用来查看或连接配置文件、日志文件、脚本文件等。
有时,cat 命令可以与 > 和 >> 运算符组合使用,以便从现有文件或标准输入流中编辑文件。这是 cat 命令被用作文本编辑器的一种罕见情况。下面将提供其中一个基本示例及其他相关内容。
命令语法
就像所有本地的 shell 命令一样,你可以使用 man 命令在终端上获取关于 cat 命令的基本语法的手册,但我们在这里也会提供一个简要的提示。下面将提供一些执行该命令的示例以进行说明。
1 | $ cat [OPTION] [filename1 [filename2 [...]]] |
通过上述的语法描述,输入的选项和文件可以不指定,也可以指定多个。我们先简单总结一下 cat 常用的选项
-n:显示所有行内容的行号-E:行内容的结尾显示为$符号-b:只为非空行的内容显示行号-s:将多个连续的空行合并为一个-T:将TAB显示为^I-v:显示非打印字符的可见表示-e:等价于-v+-E选项-t:等价于-v+-T选项-A:等价于-v+-e+-T选项
常见用法
1. 使用 cat 创建新文件
我们可以使用如下的方法创建新的文件,并且可以同时添加一些数据
1 | $ cat > foo.txt |
检查 foo.txt 文件内容
1 | $ cat foo.txt |
2. 使用 cat 向文件追加内容
我们也可以使用 cat 命令和 >> 符号来创建一个带有一些内容的新文件,或者向现有文件中添加一些新内容。
1 | $ cat >> foo.txt |
我们来看下 foo.txt 文件是否新增加了 123 的内容。
1 | $ cat foo.txt |
3. 显示 TAB 符号
1 | $ cat -T bar.txt |
可以看到显示了 ^I 表示 TAB 符号
4. 显示行结尾符号
1 | $ cat -E bar.txt |
5. 合并连续的空行
使用 -s 选项可以将多个连续的空行合并为一个
1 | $ cat foo.txt |
我们可以看到 foo.txt 文件有两个空行,下边使用 -s 选项看下效果
1 | $ cat -s foo.txt |
可以看到,只显示了一个空行的内容。但需要注意的是,cat 并没有真正修改文件,只是显示效果
6. 只为非空行显示行号
有时我们希望执行 cat 时显示行号,且只希望显示有效内容的行号,可以使用 -b 选项
1 | $ cat foo.txt |
指定 -b 选项来看效果
1 | $ cat -b foo.txt |
我们可以看到,虽然空行显示了出来,但是并没有为空行设置行号
7. 合并多个文本文件
1 | $ cat file1 file2 > file.txt |
8. 在脚本中向文件添加多行内容
有时希望在脚本中可以向文件追加多行内容,使用 cat 的 EOF 方式非常方便
1 | $ cat >> myfile.txt << EOF |



