每天一个linux命令(10):cat
1、命令简介
cat (concatenate,连接)命令将[文件]或标准输入组合输出到标准输出,如果没有指定文件,或者文件为"-",则从标准输入读取。
2、用法
cat [选项]... [文件]...
3、选项
-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 显示版本信息并退出
4、示例
示例1:显示文件内容
[root@oracledb ~]# cat test1.log 2011 2012 2013
示例2:显示文件内容及行号
[root@oracledb ~]# cat -b test1.log 1 2011 2 2012 3 2013 4 2014 5 2015 [root@oracledb ~]# cat -n test1.log 1 2011 2 2012 3 2013 4 5 6 2014 7 2015 [root@oracledb ~]# cat -s test1.log 2011 2012 2013 2014 2015 [root@oracledb ~]# cat -ns test1.log 1 2011 2 2012 3 2013 4 5 2014 6 2015
示例3:-T选项
[root@oracledb ~]# cat -T test1.log 2011 2012 2013 ^I行前面为tab 2014 2015
示例4:顺序连接两个文件log1,log2 ,并将结果输出到log3
[root@oracledb ~]# cat test1.log test2.log >test3.log
示例5:将标准输入的内容定向输出到文件
[root@oracledb ~]# cat >test4.log
按ctrl+D结束输入
or EOF(End Of File)
[root@oracledb ~]# cat >log.txt <<EOF > Hello > World > Linux > PWD=$(pwd) > EOF [root@localhost test]# ls -l log.txt -rw-r--r-- 1 root root 37 10-28 17:07 log.txt [root@localhost test]# cat log.txt Hello World Linux PWD=/opt/soft/test
示例6:tac (反向列示)
[root@oracledb ~]# cat test2.log 2016 2017 2018 [root@oracledb ~]# tac test2.log 2018 2017 2016