每天一个Linux命令(10):cat

cat的用途是链接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。

1. 命令格式:

cat [选项] [文件]

2. 命令功能

cat主要有三大功能

  • 一次显示整个文件:cat filename
  • 从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件。
  • 将几个文件合并为一个文件:cat file1 file2 > file

3. 命令参数

-A,–show-all,等价于 -vET
-b,–number-nonblank,对非空输出行编号
-e,等价于 -vE
-E,–show-ends,在每行结束处显示 $
-n,–number,由1开始对所有输出的行数编号
-s,–squeeze-blank 有连续两行以上的空白行,就代换为一行的空白行
-t ,与 -vT 等价
-T,–show-tabs,将跳格字符显示为 ^I
-u, (被忽略)
-v,–show-nonprinting,使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

4. 使用实例

例一:把 log2012.log 的内容加上行号后,输入到log2013.log里

命令:cat -n log2012.log log2013.log

# cat log2012.log 

2012-01
2012-02

# cat log2013.log 

2013-01
2013-02
2013-03

# cat -n log2012.log log2013.log 

1  2012-01
2  2012-02
3
4
5  ======
6  2013-01
7  2013-02
8
9
10 2013-03

例二:把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加),然后将内容附加到log.log里

命令:cat -b log2012.log log2013.log log.log

# cat -b log2012.log log2013.log log.log

1  2012-01
2  2012-02
3  ======
4  2013-01
5  2013-02
6  2013-03

例三:把log2012.log的文件内容加上行号后,输入到log.log里

# cat log.log 

# cat -n log2012.log > log.log

# cat log.log 

1  2012-01
2  2012-02
3
4
5  ======

例四:使用here doc来生成文件

# cat > log.txt <<EOF    
> Hello
> World
> Linux
> PWD=$(pwd)
> EOF

//here doc以<<EOF开始,输入每行要显示的内容,以>EOF结尾

# ls -l log.txt 

-rw-r--r-- 1 root root 37 10-28 17:07 log.txt

# cat log.txt 

Hello
World
Linux
PWD=/opt/soft/test

备注:tac (反向列示)

命令:tac log.txt

# tac log.txt 

PWD=/opt/soft/test
Linux
World
Hello

说明:tac是将cat反写过来,所以它的功能就与cat相反。cat是将第一行到最后一行,连续显示在屏幕上;而tac则是将最后一行到第一行,反向显示在屏幕上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值