命令简介
cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容。
命令语法
cat(选项)(参数)
命令选项
-n或-number:有1开始对所有输出的行数编号;
-b或--number-nonblank:和-n相似,只不过对于空白行不编号;
-s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行;
-A:显示不可打印字符,行尾显示“$”;
-e:等价于"-vE"选项
-t:等价于"-vT"选项;
命令实例
[root@localhost ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Apr 3 18:32:24 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/cl-root / xfs defaults 0 0
UUID=a4fcb234-a261-44f8-9653-6d3ed094a989 /boot xfs defaults 0 0
/dev/mapper/cl-swap swap swap defaults 0 0
[root@localhost ~]# cat > test.txt ## ctrl + D 停止输入
welcome to use cat command
bye
bye
[root@localhost ~]# cat test.txt
welcome to use cat command
bye
bye
我们一般不会像上面那样做,我们使用下面这种方式对文件进行追加操作。我这里为了测试在末尾输入eof
没有和结尾处定义的一致,也说明了Linux是区分大小写的。
[root@localhost ~]# cat > Demo.txt << EOF
> HELLO WORLD
> welcome to linux world
> bye
> eof
> EOF
[root@localhost ~]# cat Demo.txt
HELLO WORLD
welcome to linux world
bye
eof
将两个文件的内容和并到一个文件里面
[root@localhost ~]# cat Demo.txt test.txt > Demo-test.txt
[root@localhost ~]# cat Demo.txt
HELLO WORLD
welcome to linux world
bye
eof
[root@localhost ~]# cat test.txt
welcome to use cat command
bye
bye
[root@localhost ~]# cat Demo-test.txt
HELLO WORLD
welcome to linux world
bye
eof
welcome to use cat command
bye
bye
如果加上-n选项表示的是显示文件的行号
[root@localhost ~]# cat -n Demo-test.txt
1 HELLO WORLD
2 welcome to linux world
3 bye
4 eof
5 welcome to use cat command
6 bye
7 bye
如果想要对文件进行追加操作,那么需要使用 >> 操作符 其中!$ 表示上一条命令的最后一个参数
[root@localhost ~]# cat Demo.txt test.txt >> Demo-test.txt
[root@localhost ~]# cat -n !$
cat -n Demo-test.txt
1 HELLO WORLD
2 welcome to linux world
3 bye
4 eof
5 welcome to use cat command
6 bye
7 bye
8 HELLO WORLD
9 welcome to linux world
10 bye
11 eof
12 welcome to use cat command
13 bye
14 bye
这里我们使用cat命令查看我们系统版本来结束我们本篇文章
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@localhost ~]# cat /proc/version
Linux version 3.10.0-514.10.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Fri Mar 3 00:04:05 UTC 2017
还有一个可以查看内核版本的命令
[root@localhost ~]# uname -r
3.10.0-514.10.2.el7.x86_64
同时还有一个命令可以查看,这个命令有些版本可能没有,你可以选择去用yum安装,我在CentOS7进行测试的时候是没有的
在CentOS6.8上可以完美得出结果
[root@node1 ~]# lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.8 (Final)
Release: 6.8
Codename: Final