linux常用命令学习(九) -- cat

cat,全称为concatenate files and print on the standard output,主要作用为:查看文件内容,也可以给文件追加内容到结尾。

命令格式

cat [选项] [文件]

常用命令参数

参数功能
-A–show-all ;和-vET等价。
-b–number-nonblank ; 列出行号,仅对非空行号显示,空白行不标记行号
-e和-vE等价;
-E–show-ends, 将结尾的断行字符$显示出来
-n–number,对输出的所有行进行编号,编号由1开始递增。空白行也有行号。与-b命令不同。
-T–show-tabs, 将[tab]按键以 ^I 显示出来。
-v–show-nonprinting, 列出一些看不出的特殊字符。

示例

  • cat -n demo1.log
    显示文件demo1.log的行号,包括空行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@kvm45072 demo1]# cat -n demo1.log
1 this is demo1.log
2 this is demo1.log
3 test
4 test
5
6 test
7
8 demo1
9 demo1
10 demo
11 demo
12
[root@kvm45072 demo1]#
  • cat -b demo1.log
    显示文件demo1.log的行号,只显示非空行号。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@kvm45072 demo1]# cat -b demo1.log
1 this is demo1.log
2 this is demo1.log
3 test
4 test

5 test

6 demo1
7 demo1
8 demo
9 demo

[root@kvm45072 demo1]#
  • cat -b demo1.log demo2.log log.log
    将demo1.log/demo2.log附加到log.log,并显示非空行号。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@kvm45072 demo1]# cat -b demo1.log demo2.log log.log
1 this is demo1.log
2 this is demo1.log
3 test
4 test

5 test

6 demo1
7 demo1
8 demo
9 demo

10 this is demo2.log
11 this is demo2.log

12 test
13 test

14 demo
15 demo
[root@kvm45072 demo1]#
  • cat >log.txt <<EOF
    生成文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@kvm45072 demo1]# cat >log.txt <<EOF
> HELLO
> WORLD
> PWD=$(pwd)
> test
> EOF
[root@kvm45072 demo1]# ls -l log.txt
-rw-r--r--. 1 root root 39 May 4 14:14 log.txt
[root@kvm45072 demo1]# cat log.txt
HELLO
WORLD
PWD=/root/linux/demo1
test
[root@kvm45072 demo1]#