cat命令
一、简介
cat (concatenate,连接)命令将[文件]或标准输入组合输出到标准输出,
如果没有指定文件,或者文件为”-“,则从标准输入读取。
二、语法
cat [选项]... [文件]...
三、选项
-A
,--show-all
: 等于-vET-b
,--number-nonblank
: 对非空输出行编号-e
: 等于-vE-E
,--show-ends
: 在每行结束处显示”$”-n
,--number
: 对所有行编号,包括空行-s
,--squeeze-blank
: 压缩多行空行为一空行-t
: 与-vT 等价-T
,--show-tabs
: 将跳格(TAB)字符显示为^I-u
: (被忽略)-v
,--show-nonprinting
: 使用^ 和M- 引用,除了LFD和 TAB 之外--help
: 显示此帮助信息并退出--version
: 显示版本信息并退出
四、实例
1、显示文件内容
[root@VM_0_4_centos chenwei]# cat case.sh
#!/bin/bash
case $1 in
"1")
echo "周一"
;;
"2")
echo "周二"
;;
*)
echo "other"
;;
esac
2、显示内容以及行号
[root@VM_0_4_centos chenwei]# cat -n a.txt
1 2015
2 2016
3 2017
4
5
6 2018
7 2019
8 2020
9 ...
[root@VM_0_4_centos chenwei]# cat -b a.txt
1 2015
2 2016
3 2017
4 2018
5 2019
6 2020
7 ...
[root@VM_0_4_centos chenwei]# cat -sn a.txt
1 2015
2 2016
3 2017
4
5 2018
6 2019
7 2020
8 ...
[root@VM_0_4_centos chenwei]# cat -sb a.txt
1 2015
2 2016
3 2017
4 2018
5 2019
6 2020
7 ...
3、 —T 选项 ( ^I行前面为tab)
[root@VM_0_4_centos chenwei]# cat -T case.sh
#!/bin/bash
case $1 in
"1")
^Iecho "周一"
^I;;
"2")
^Iecho "周二"
^I;;
*)
^Iecho "other"
^I;;
esac
4、顺序连接两个文件log1,log2 ,并将结果输出到log3
[root@oracledb ~]# cat test1.log test2.log >test3.log
5、将标准输入的内容定向输出到文件
[root@VM_0_4_centos chenwei]# cat > log4
6、tac (反向列示)
[root@VM_0_4_centos chenwei]# tac log5