千家信息网

怎么在Linux中使用cat文本输出命令

发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,怎么在Linux中使用cat文本输出命令?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。cat命令是linux下的一个文本输出命令,通常是
千家信息网最后更新 2025年02月06日怎么在Linux中使用cat文本输出命令

怎么在Linux中使用cat文本输出命令?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的。
一、功能
cat主要有三大功能:
1.一次显示整个文件。

代码如下:


$ cat filename


2.从键盘创建一个文件。

代码如下:


$ cat > filename


只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。

代码如下:


$cat file1 file2 > file


cat具体命令格式为 :

代码如下:

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


说明:把档案串连接后传到基本输出(屏幕或加 > fileName 到另一个档案)
参数:
-n 或 –number 由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
范例:

代码如下:

cat -n linuxfile1 > linuxfile2

把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里

代码如下:

cat -b linuxfile1 linuxfile2 >> linuxfile3

把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)之后将内容附加到linuxfile3 里。
范例:
把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里

代码如下:


cat -n linuxfile1 > linuxfile2


把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)之后将内容附加到 linuxfile3 里。

代码如下:


cat -b linuxfile1 linuxfile2 >> linuxfile3

代码如下:

cat /dev/null > /etc/test.txt

此为清空/etc/test.txt档案内容
在linux shell脚本中我们经常见到类似于cat << EOF的语句,不熟悉的童鞋可能觉得很奇怪:EOF好像是文件的结束符,用在这里起到什么作用?
EOF是"end of file",表示文本结束符。

代码如下:


<(内容)
EOF

首先必须要说明的是EOF在这里没有特殊的含义,你可以使用FOE或OOO等(当然也不限制在三个字符或大写字符)。
可以把EOF替换成其他东西,意思是把内容当作标准输入传给程
结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。

接下来,简单描述一下几种常见的使用方式及其作用:
(1)、cat<(2)、cat>filename,创建文件,并把标准输入输出到filename文件中,以ctrl+d作为输入结束:
注意:输入时是没有'>'的。
(3)、cat>filename<

二、使用
看例子是最快的熟悉方法:

代码如下:


# cat << EOF > test.sh
> #!/bin/bash #"shell脚本"
> #you Shell script writes here.
> EOF


结果:
引用

代码如下:

# cat test.sh
#!/bin/bash
#you Shell script writes here.


可以看到,test.sh的内容就是cat生成的内容。
cat <test.sh 内容 EOF
---就是将内容写入test.sh,之前存在的内容会被覆盖掉。EOF可以换成其他符号比如EEE:cat <test.sh 内容 EEE

三、其他写法
1、追加文件

代码如下:

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


---将内容追加到 test.sh 的后面,不会覆盖掉原有的内容
2、换一种写法

代码如下:

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


3、EOF只是标识,不是固定的

代码如下:


# cat << HHH > iii.txt
> sdlkfjksl
> sdkjflk
> asdlfj
> HHH


这里的"HHH"就代替了"EOF"的功能。结果是相同的。
引用

代码如下:


# cat iii.txt
sdlkfjksl
sdkjflk
asdlfj


4、非脚本中
如果不是在脚本中,我们可以用Ctrl-D输出EOF的标识

代码如下:


# cat > iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
Ctrl-D


结果:
引用

代码如下:


# cat iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk

四、基本用法实例演示
例1

代码如下:


[root@localhost ~]# cat test #普通输出
1111111111
2222222222
3333333333
[root@localhost ~]# cat -n test #开头显示行号
1 1111111111
2
3
4 2222222222
5
6 3333333333
[root@localhost ~]# cat -E test #以$结束
1111111111$
$
$
2222222222$
$
3333333333$
[root@localhost ~]# cat -s test #超过二个空行,合并成一个
1111111111
2222222222
3333333333
[root@localhost ~]# cat -ns test #去空行,加行号
1 1111111111
2
3 2222222222
4
5 3333333333


例2

代码如下:


[zhangy@BlackGhost awksed]$ cat x* > google_bak.tar.gz #合并文件


例3

代码如下:


# cat > aa #从键盘录入内容到文件,回车是保存,退出Ctrl+z
4234234
234234
^Z
[4]+ Stopped cat > aa
# cat file1 file2 > file #合并二个文件为一个


例4

代码如下:


# cat test.tar.gz_?? > test.tar.gz #可以用cat命令将被切割的多个压缩包合并成一个
# tar -xvzf test.tar.gz #再用tar命令解压

看完上述内容,你们掌握怎么在Linux中使用cat文本输出命令的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

内容 代码 文件 输出 档案 输入 命令 行号 空白 空白行 文本 结果 脚本 作用 功能 字符 方法 标准 标识 写法 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 巨易网络技术 小学教师怎样维护网络安全 扬州软件开发工程师 单机游戏连接服务器失败怎么回事 java服务器语言 2022年五大网络安全 劲舞团炸服务器 千湖岛服务器 哈尔滨打卡软件开发 深圳二七网络技术有限公司 西北工业大学网络安全 深圳系统软件开发价格表 软件开发费用的运维服务费 修改arcgis数据库投影坐标 呼和浩特网络安全技术培训班 为什么软件开发这么难如何解决 华为的服务器芯片构架 在数据库中学籍尾号怎么处理 售票系统是数据库管理吗 如何加强信息共享网络安全防护 获取远程服务器管理员密码 软件开发选择编程语言 DNS服务器是谁在管理 我的世界服务器外接硬盘 流量宝为什么连接不上通讯服务器 碧蓝档案服务器请求处理失败 本科生的论文存进国家数据库吗 魔兽世界以前服务器最大的公会 软件开发离职竞业协议 服务器后端语言
0