Linux cat指令详解(常用命令)

linux中cat是 concatenate 的缩写,此令用以将文件、标准输入内容打印至标准输出,常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。

参数

cat [选项] [文件]

-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 之外

功能

1.一次显示整个文件。
$ cat filename


2.从键盘创建一个文件。
$ cat > filename
只能创建新文件,不能编辑已有文件.


3.将几个文件合并为一个文件。
$cat file1 file2 > file


cat -n file 输出file文件中的全部内容,并且对file文件进行从 1 开始的编号

cat -b file 输出file文件中的全部内容,并且对fiel文件中除 空行外 进行从 1 开始编号

cat file1 > file2 将文件 file1 写入到 file2 中,如果 file2 存在,则覆盖file2文件,如果file2 不存在,则创建 file2

cat -n file1 > file2 对文件 file1 进行编号,并写入到 file2 中

cat > file1 直接向file1 中写入内容, 内容来自键盘在控制台输入, 按下键盘Ctrl+D结束输入,之前输入的文件保存在file1中

cat file1 file2 > file3 将文件 file1 和 file2 整合到 file3 中

cat file1 file2 >> file3 将文件 file1 和 file2 追加到 file3中 文件不存在时,创建文件

cat >> file1 直接向file1 文件追加内容,内容来自键盘输入 按下Ctrl + D 结束输入,之前输入的内容醉驾在 file1 后

加入 file1 是一个空文件

cat file1 > file2 可以用来清空文件file2

实例

1. 查看系统信息

cat /etc/issue
Ubuntu 16.04.1 LTS

2. 将/etc/hosts 的内容完整的显示出来(包含特殊字符)

cat -A /etc/hosts
127.0.0.1  localhost  localhost.localdomain  VM-129-165-ubuntu$
127.0.1.1^ITENCENT$
# The following lines are desirable for IPv6 capable hosts$
::1     localhost ip6-localhost ip6-loopback$

3. 将内容追加到 test.sh 的后面,不会覆盖掉原有的内容

cat << EOF >> test.sh 内容 EOF

4. 把 text.txt的文件内容加上行号后输入python.txt这个文件里,多行空行换成一行输出

cat -ns text.txt  >  python.txt

5. 将内容写入test.sh,之前存在的内容会被覆盖掉

cat << EOF > test.sh  内容 EOF

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。