【linux】循序渐进学运维-cat

cat

功能:连接文件和标准输出打印

常用选项:

语法:
cat (参数)(选项)
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I。
-e : 等价于 -vE。
-A, --show-all:等价于 -vET。
-t:等价于"-vT"选项;

实例:

1. 显示文件内容
[root@ecs-s6-small-1-linux-20191023111300 ~]# cat a.txt
1235678

abcdefghijk

AMMADMKD

[root@ecs-s6-small-1-linux-20191023111300 ~]# cat /etc/issue
CentOS release 6.10 (Final)
Kernel \r on an \m

2. 合并文件内容
[root@ecs-s6-small ~]# cat b.txt
bbbbbbbbbbbbbbbbbbbb
b11111111111111111

b2222222222222222
[root@ecs-s6-small ~]# cat a.txt b.txt > c.txt

[root@ecs-s6-small ~]# cat c.txt
1235678

abcdefghijk

AMMADMKD

bbbbbbbbbbbbbbbbbbbb
b11111111111111111

b2222222222222222



3. 查看文件且加上行号
[root@ecs-s6-small-1-linux-20191023111300 ~]# cat -n a.txt
     1	1235678
     2	
     3	abcdefghijk
   
4. 空行不加行号
[root@ecs-s6-small~]# cat -b a.txt     
     1	1235678

     2	abcdefghijk

5. 空号合并成一行,并且不加行号
[root@ecs-s6-small ~]# cat -n a.txt       
     1	1235678
     2	
     3	
     4	abcdefghijk


[root@ecs-s6-small ~]# cat -bs a.txt 
     1	1235678

     2	abcdefghijk



可以看到23行的空行,合并成了一行

6. 空行合并成一行并加行号
[root@ecs-s6-small ~]# cat -ns a.txt            
     1	1235678
     2	
     3	abcdefghijk

补充

tac是cat反写过来的,所以功能就跟cat相反,cat输出的是第一行到最后一行输出的屏幕上,而tac则是由最后一行到第一行反过来输出到屏幕上

发布了256 篇原创文章 · 获赞 56 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/xinshuzhan/article/details/102809064