cat命令
cat命令是linux下的一个文本输出命令,一般用于查看文件内容。
cat具体命令格式为 : cat [-AbeEnstTuv] [--help] [--version] fileName
cat有三大功能
1、查看整个文件
cat 1.txt
2、从键盘上创建一个文件(只能创建新文件,不能编辑已有文件)
[root@node01 day4]# cat > 123.txt
kjdkf
jkdjfk
[root@node01 day4]# cat 123.txt
kjdkf
jkdjfk
END
3、将几个文件合成一个文件
cat 1.log 2.log > 3.log
参数:
-n 或 –number 由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
实例1:
-n将文件加上行号输入到另一个文件
[root@node01 day4]# cat -n 123.txt>234.txt
[root@node01 day4]# cat 234.txt
1 dfdkfjkf
2 dfd
3 df
4 c
5 cvcx
[root@node01 day4]#
实例2:
-b合并文件兵加上行号(空白行不加)输出到另一个文件
[root@node01 day4]# cat -b 123.txt 234.txt>345.txt
[root@node01 day4]# cat 345.txt
1 dfdkfjkf
2 dfd
3 df
4 c
5 cvcx
6 1 dfdkfjkf
7 2 dfd
8 3 df
9 4 c
10 5 cvcx
[root@node01 day4]#
实例3:
cat /dev/null > 123.txt 此为清空123.txt
[root@node01 day4]# cat /dev/null > 123.txt
[root@node01 day4]# cat 123.txt
[root@node01 day4]#
实例4:(脚本中常用)
在linux shell脚本中常用到cat << EOF的语句,EOF是“end of file”,表示文本结束符。
<<EOF
(内容)
EOF
[root@node01 day4]# cat <<EOF >>123.txt EOF只是标识,不是固定的
> KDFJK
> JFK
> DFD
> eo
> EOF
[root@node01 day4]# cat 123.txt
KDFJK
JFK
DFD
eo
[root@node01 day4]# cat <<END >>111.txt END只是标识,不是固定的
> kj
> df
> END
[root@node01 day4]# cat 111.txt
kj
df
[root@node01 day4]#
[root@node01 day4]# cat <<OOOO >>222.txt
> df
> df
> df
> OOOO
[root@node01 day4]# cat 222.txt
df
df
df
[root@node01 day4]#
首先必须要说明的是EOF在这里没有特殊的含义,你可以使用FOE或OOO等(当然也不限制在三个字符或大写字符)。
可以把EOF替换成其他东西,意思是把内容当作标准输入传
结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果
[root@node01 day4]# cat>333.txt<<OOO
> KK
> DF
> CC
> OOO
[root@node01 day4]# cat 333.txt
KK
DF
CC
1、cat<<EOF,以EOF输入字符为标准输入结束
2、cat>filename,创建文件,并把标准输入输出到filename文件中,以ctrl+d作为输入结束
3、cat>filename<<EOF,以EOF作为输入结束,和ctrl+d的作用一样:
cat命令是linux下的一个文本输出命令,一般用于查看文件内容。
cat具体命令格式为 : cat [-AbeEnstTuv] [--help] [--version] fileName
cat有三大功能
1、查看整个文件
cat 1.txt
2、从键盘上创建一个文件(只能创建新文件,不能编辑已有文件)
[root@node01 day4]# cat > 123.txt
kjdkf
jkdjfk
[root@node01 day4]# cat 123.txt
kjdkf
jkdjfk
END
3、将几个文件合成一个文件
cat 1.log 2.log > 3.log
参数:
-n 或 –number 由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
实例1:
-n将文件加上行号输入到另一个文件
[root@node01 day4]# cat -n 123.txt>234.txt
[root@node01 day4]# cat 234.txt
1 dfdkfjkf
2 dfd
3 df
4 c
5 cvcx
[root@node01 day4]#
实例2:
-b合并文件兵加上行号(空白行不加)输出到另一个文件
[root@node01 day4]# cat -b 123.txt 234.txt>345.txt
[root@node01 day4]# cat 345.txt
1 dfdkfjkf
2 dfd
3 df
4 c
5 cvcx
6 1 dfdkfjkf
7 2 dfd
8 3 df
9 4 c
10 5 cvcx
[root@node01 day4]#
实例3:
cat /dev/null > 123.txt 此为清空123.txt
[root@node01 day4]# cat /dev/null > 123.txt
[root@node01 day4]# cat 123.txt
[root@node01 day4]#
实例4:(脚本中常用)
在linux shell脚本中常用到cat << EOF的语句,EOF是“end of file”,表示文本结束符。
<<EOF
(内容)
EOF
[root@node01 day4]# cat <<EOF >>123.txt EOF只是标识,不是固定的
> KDFJK
> JFK
> DFD
> eo
> EOF
[root@node01 day4]# cat 123.txt
KDFJK
JFK
DFD
eo
[root@node01 day4]# cat <<END >>111.txt END只是标识,不是固定的
> kj
> df
> END
[root@node01 day4]# cat 111.txt
kj
df
[root@node01 day4]#
[root@node01 day4]# cat <<OOOO >>222.txt
> df
> df
> df
> OOOO
[root@node01 day4]# cat 222.txt
df
df
df
[root@node01 day4]#
首先必须要说明的是EOF在这里没有特殊的含义,你可以使用FOE或OOO等(当然也不限制在三个字符或大写字符)。
可以把EOF替换成其他东西,意思是把内容当作标准输入传
结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果
[root@node01 day4]# cat>333.txt<<OOO
> KK
> DF
> CC
> OOO
[root@node01 day4]# cat 333.txt
KK
DF
CC
1、cat<<EOF,以EOF输入字符为标准输入结束
2、cat>filename,创建文件,并把标准输入输出到filename文件中,以ctrl+d作为输入结束
3、cat>filename<<EOF,以EOF作为输入结束,和ctrl+d的作用一样: