cat命令
cat命令用于连接文件打印到输出设备中,cat是Linux的基本文本输出命令,通常用于查看文件内容。
作用:连接多个文件并且打印到屏幕输出,或者重定向到其他文件,也可以用来查看显示单个文件,或者多个文件。
语法
cat (参数)(选项)
-n 或 –number:由 1 开始对所有输出的行数编号。
-b 或 –number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 –squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 –show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 –show-ends : 在每行结束处显示 $。
-T 或 –show-tabs: 将 TAB 字符显示为 ^I。
-e : 等价于 -vE。
-A, –show-all:等价于 -vET。
-t:等价于”-vT”选项;
cat主要功能
1、一次显示文件的所有内容 cat filename
2、从磁盘创建一个新文件cat >filename(只能创建新文件不能编辑已有文件)
3、将几个文件合并为一个文件cat file1 file2 > file
示例
cat -n file1 > file2 把 file1 的档案内容加上行号后输入 file2 这个档案里
cat -b file1file2 >> file3 file1 和 file2 的文档内容加上行号(空白行不加)之后将内容附加到 file3 文档里:
如果原来没有 b.txt 文件。那么:
linuxidc@linuxidc:~/www.linuxidc.com$ cat >b.txt <<EOF
> EOF
linuxidc@linuxidc:~/www.linuxidc.com$ ls
b.txt
输入第一行后,输入EOF,回车,就可以生成一个 b.txt 文件。其中EOF是告诉 bash 哪个符号代表文件结束。当然你也可以使用自己习惯的符号(比如下面的例子使用www)。
linuxidc@linuxidc:~/www.linuxidc.com$ cat >b.txt<<www
> linuxidc
> linuxidc.com
> linuxidc
> www
linuxidc@linuxidc:~/www.linuxidc.com$ cat b.txt
linuxidc
linuxidc.com
linuxidc
清空 /home/linuxidc/www.linuxidc.com/b.txt 文档内容:
linuxidc@linuxidc:~/www.linuxidc.com$ cat /dev/null > /home/linuxidc/www.linuxidc.com/b.txt
格式:
cat [option] [file]
1,最简单的用法,直接跟文件名称,查看文件内容
linuxidc@linuxidc:~/www.linuxidc.com$ echo ‘hello,my name is linuxidc, how are you?’ > linuxidc.txt
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
hello,my name is linuxidc, how are you?
2,也可以使用如下方式,向文件写入或者追加内容
linuxidc@linuxidc:~/www.linuxidc.com$ ls
linuxidc.txt
linuxidc@linuxidc:~/www.linuxidc.com$ cat >> linuxidc.txt << EOF
> 这是我新增的第2行内容 www.linuxidc.com
> 这是我新增的第3行内容 m.linuxidc.com
> EOF
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
hello,my name is linuxidc, how are you?
这是我新增的第2行内容 www.linuxidc.com
这是我新增的第3行内容 m.linuxidc.com
3,-n与-b 都是对文件进行编号,-b不会对空行编号
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
hello,my name is linuxidc, how are you?
这是我新增的第2行内容 www.linuxidc.com
这是我新增的第3行内容 m.linuxidc.com
linuxidc@linuxidc:~/www.linuxidc.com$ cat >> linuxidc.txt << EOF
>
>
>
> 现在在上面加入了三个空行
> EOF
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
hello,my name is linuxidc, how are you?
这是我新增的第2行内容 www.linuxidc.com
这是我新增的第3行内容 m.linuxidc.com
现在在上面加入了三个空行
linuxidc@linuxidc:~/www.linuxidc.com$ cat -n linuxidc.txt
1 hello,my name is linuxidc, how are you?
2 这是我新增的第2行内容 www.linuxidc.com
3 这是我新增的第3行内容 m.linuxidc.com
4
5
6
7 现在在上面加入了三个空行
linuxidc@linuxidc:~/www.linuxidc.com$ cat -b linuxidc.txt
1 hello,my name is linuxidc, how are you?
2 这是我新增的第2行内容 www.linuxidc.com
3 这是我新增的第3行内容 m.linuxidc.com
4 现在在上面加入了三个空行
4,-E 在每一行的行尾显示美元符号
linuxidc@linuxidc:~/www.linuxidc.com$ cat -E linuxidc.txt
hello,my name is linuxidc, how are you?$
这是我新增的第2行内容 www.linuxidc.com$
这是我新增的第3行内容 m.linuxidc.com$
$
$
$
现在在上面加入了三个空行$
5,-s: 把两个以上连续的空行,变成一个
linuxidc@linuxidc:~/www.linuxidc.com$ cat -n linuxidc.txt
1 hello,my name is linuxidc, how are you?
2 这是我新增的第2行内容 www.linuxidc.com
3 这是我新增的第3行内容 m.linuxidc.com
4
5
6
7
8 现在在上面加入了四个空行
9
10 现在在上面加入了一个空行
linuxidc@linuxidc:~/www.linuxidc.com$ cat -ns linuxidc.txt
1 hello,my name is linuxidc, how are you?
2 这是我新增的第2行内容 www.linuxidc.com
3 这是我新增的第3行内容 m.linuxidc.com
4
5 现在在上面加入了四个空行
6
7 现在在上面加入了一个空行
6,利用重定向写入内容
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
linuxidc@linuxidc:~/www.linuxidc.com$ cat > linuxidc.txt
www.linuxidc.com
linuxidc
linuxmi
linuxidc.com
^C
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt
www.linuxidc.com
linuxidc
linuxmi
linuxidc.com
内容输入完毕,用ctrl+d或者ctrl+c中断输入
7,显示多个文件内容
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.txt linux.txt linuxmi.txt
www.linuxidc.com
linuxidc
linuxmi
linuxidc.com
我是linux.txt的内容
我是linux.txt的内容123456789
本文永久更新链接地址:https://www.linuxidc.com/Linux/2018-05/152426.htm