cat-合并输出多个文件的内容

cat 命令能够将文件内容输出在输出端,或者将多个文件合并输出到输出端。bash

语法

cat [OPTION]... [FILE]...
复制代码

可以使用的option值能够经过 man cat 命令查阅,这里再也不赘述。spa

示例

假设你在当前目录下有两个文件a.txt和b.txt。code

// a.txt
a
aa
aaa
复制代码
// b.txt
b
bb
bbb
复制代码

例1 在终端上打印a.txt的内容。

[work@10-13-22 ant]$ cat a.txt
a
aa
aaa

复制代码

能够看到a.txt文件的内容所有输出到了终端上。io

例2 合并输出多文件内容

有些场景,咱们可能须要一次将多个文件一块输出到终端上进行对比查看,减小多个文件之间的切换。class

[work@10-13-22 ant]$ cat a.txt b.txt
a
aa
aaa
b
bb
bbb

复制代码

这个例子中,咱们同时将ab中的内容一块按照顺序进行输出。cat 命令能够同时指定多个文件。终端

例3 将多个文件内容合并保存到新文件

[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

复制代码

本示例中,咱们将ab两个文件内容合并后,没有直接在终端输出,而是输出到了c.txt语法

注:输出至已存在的文件,会覆盖原有的内容。di

例3 添加行号

[work@10-13-22 ant]$ cat -n a.txt
     1	a
     2	aa
     3	aaa
复制代码

经过使用 -n 选项,为输出的内容添加行号,使内容的可读性更强。文件

例3 添加行号

当文件中存在大量连续的空行时,很影响查看。使用 -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
复制代码

能够看到原来的多空行所有合并为了一个空行。

相关文章
相关标签/搜索