Linux cat指令(用于连接文件并打印到标准输出设备上)

Posted Dontla

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux cat指令(用于连接文件并打印到标准输出设备上)相关的知识,希望对你有一定的参考价值。

cat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。

使用权限

所有使用者

语法格式

cat [-AbeEnstTuv] [--help] [--version] fileName

参数说明

-n 或 --number:由 1 开始对所有输出的行数编号。

-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。

-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行结束处显示 $。

-T 或 --show-tabs: 将 TAB 字符显示为 ^I。

-A, --show-all:等价于 -vET。

-e:等价于"-vE"选项;

-t:等价于"-vT"选项;

实例

把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里(-n)

cat -n textfile1 > textfile2
[root@T300v2:/userdata/TEST_BASH]# ls
hello.sh
[root@T300v2:/userdata/TEST_BASH]# cat hello.sh 
#!/bin/Bash 
#The first program 
# Author: shenchao (E-mail: shenchao@lampbrother.net)   
echo -e "Mr. Shen Chao is the most honest man in LampBrother"
[root@T300v2:/userdata/TEST_BASH]# cat -n hello.sh > hello2.sh 
[root@T300v2:/userdata/TEST_BASH]# ls
hello.sh  hello2.sh
[root@T300v2:/userdata/TEST_BASH]# cat hello2.sh 
     1	#!/bin/Bash 
     2	#The first program 
     3	# Author: shenchao (E-mail: shenchao@lampbrother.net)   
     4	echo -e "Mr. Shen Chao is the most honest man in LampBrother"[root@T300v2:/userdata/TEST_BASH]# 

把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里(-b)

cat -b textfile1 textfile2 >> textfile3
[root@T300v2:/userdata/TEST_BASH]# ls
hello.sh  hello2.sh
[root@T300v2:/userdata/TEST_BASH]# cat hello.sh 
#!/bin/Bash 
#The first program 
# Author: shenchao (E-mail: shenchao@lampbrother.net)   
echo -e "Mr. Shen Chao is the most honest man in LampBrother"
[root@T300v2:/userdata/TEST_BASH]# cat hello2.sh 
     1	#!/bin/Bash 
     2	#The first program 
     3	# Author: shenchao (E-mail: shenchao@lampbrother.net)   
     4	echo -e "Mr. Shen Chao is the most honest man in LampBrother"
[root@T300v2:/userdata/TEST_BASH]# cat -b hello.sh hello2.sh >> hello3.sh
[root@T300v2:/userdata/TEST_BASH]# cat hello3.sh 
     1	#!/bin/Bash 
     2	#The first program 
     3	# Author: shenchao (E-mail: shenchao@lampbrother.net)   
     4	echo -e "Mr. Shen Chao is the most honest man in LampBrother"
     5	     1	#!/bin/Bash 
     6	     2	#The first program 
     7	     3	# Author: shenchao (E-mail: shenchao@lampbrother.net)   
     8	     4	echo -e "Mr. Shen Chao is the most honest man in LampBrother"

清空 /etc/test.txt 文档内容(cat /dev/null > [目标文件路径])

cat /dev/null > /etc/test.txt
[root@T300v2:/userdata/TEST_BASH]# ls
hello.sh  hello2.sh  hello3.sh
[root@T300v2:/userdata/TEST_BASH]# cat hello.sh 
#!/bin/Bash 
#The first program 
# Author: shenchao (E-mail: shenchao@lampbrother.net)   
echo -e "Mr. Shen Chao is the most honest man in LampBrother"
[root@T300v2:/userdata/TEST_BASH]# cat /dev/null > ./hello.sh 
[root@T300v2:/userdata/TEST_BASH]# cat hello.sh 
[root@T300v2:/userdata/TEST_BASH]# 

cat 也可以用来制作镜像文件。例如要制作软盘的镜像文件,将软盘放好后输入

cat /dev/fd0 > OUTFILE

相反的,如果想把 image file 写到软盘,输入:

cat IMG_FILE > /dev/fd0

注:

  1. OUTFILE 指输出的镜像文件名。
  2. IMG_FILE 指镜像文件。
  3. 若从镜像文件写回 device 时,device 容量需与相当。
  4. 通常用制作开机磁片。

(这个倒没测试。。。)

参考文章:Linux cat 命令

以上是关于Linux cat指令(用于连接文件并打印到标准输出设备上)的主要内容,如果未能解决你的问题,请参考以下文章

cat -用于连接文件并打印到标准输出设备上

linux学习笔记9--命令cat

每天一个linux命令-cat

Linux 文本处理命令 - cat

Linux 文本处理命令 - cat

Linux每天一个命令:cat