cat
命令能够将文件内容输出在输出端,或者将多个文件合并输出到输出端。bash
cat [OPTION]... [FILE]...
复制代码
可以使用的option值能够经过 man cat
命令查阅,这里再也不赘述。spa
假设你在当前目录下有两个文件a.txt和b.txt。code
// a.txt
a
aa
aaa
复制代码
// b.txt
b
bb
bbb
复制代码
[work@10-13-22 ant]$ cat a.txt
a
aa
aaa
复制代码
能够看到a.txt
文件的内容所有输出到了终端上。io
有些场景,咱们可能须要一次将多个文件一块输出到终端上进行对比查看,减小多个文件之间的切换。class
[work@10-13-22 ant]$ cat a.txt b.txt
a
aa
aaa
b
bb
bbb
复制代码
这个例子中,咱们同时将a
和b
中的内容一块按照顺序进行输出。cat
命令能够同时指定多个文件。终端
[work@10-13-22 ant]$ cat a.txt b.txt > c.txt
[work@10-13-22 ant]$ cat c.txt
a
aa
aaa
b
bb
bbb
复制代码
本示例中,咱们将a
和b
两个文件内容合并后,没有直接在终端输出,而是输出到了c.txt
。语法
注:输出至已存在的文件,会覆盖原有的内容。di
[work@10-13-22 ant]$ cat -n a.txt
1 a
2 aa
3 aaa
复制代码
经过使用 -n
选项,为输出的内容添加行号,使内容的可读性更强。文件
当文件中存在大量连续的空行时,很影响查看。使用 -s
选项能够将2行以上的空行合并为1行输出。ant
为了方便演示,咱们在 a.txt
中插入一些空行。
// a.txt
a
aa
aaa
复制代码
为了便于进行对比,先不合并空行:
[work@10-13-22 ant]$ cat -n a.txt
1 a
2
3
4
5 aa
6
7
8 aaa
复制代码
加上-s
选项:
[work@10-13-22 ant]$ cat -sn a.txt
1 a
2
3 aa
4
5 aaa
复制代码
能够看到原来的多空行所有合并为了一个空行。