网站首页 > 技术文章 正文
cat (全称 concatenate) 命令是 Linux/类 Unix 操作系统中最常用的命令之一。cat 命令允许我们创建单个或多个文件、查看文件内容、连接文件和重定向终端或文件中的输出。
在本文中,我们将了解如何方便地使用 cat 命令及其在 Linux 中的示例。
Cat命令的一般语法
$ cat [OPTION] [FILE]...
1. 显示文件内容
下面的例子将显示 /etc/passwd 文件。
# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
rumenz:x:500:500::/home/rumenz:/bin/bash
2.终端查看多个文件的内容
在下面的示例中,它将显示 rumenz 和 rumenz1 终端中的文件。
# cat rumenz rumenz1
入门小站
rumenz.com
3.用cat命令创建文件
我们将创建一个名为 rumenz2 使用以下命令创建文件。
# cat > rumenz2
等待用户输入,键入所需文本,然后按 CTRL+D (按住 Ctrl key 并输入d) 退出。正文将写在rumenz2文件。你可以使用以下命令查看文件的内容cat 命令。
# cat rumenz2
rumenz.com
4. 使用more和less参数的Cat命令
如果有大量的内容,屏幕滚动起来非常快,我们可以使用参数more和less
# cat song.txt | more
# cat song.txt | less
5. 在文件中显示行号
随着 -n 选项你可以看到一个文件的行号 song.txt 在输出端。
# cat -n song.txt
1 入门
2 小站
3 入门小站
4 rumenz
5 rumenz.com
6 入门 小站
7 你好 世界
6.在文件末尾显示$
在下面,你可以看到 -e 选项 $ 显示在行尾,也显示在空格中 $ 如果段落之间有任何差距。此选项可用于将多行压缩为一行。
# cat -e rumenz
rumenz$
rumenz.com$
rumenz com$
hello world$
7. 在文件中显示制表符分隔的行
在下面的输出中,我们可以看到TAB空间被' ^I '字符填充。
# cat -T rumenz
rumenz
rumenz.com
rumenz^Icom
hello^Iworld
8.一次显示多个文件
在下面的例子中,我们有三个文件 rumenz, rumenz1, 和 rumenz2,并能够查看这些文件的内容,如上所示。我们需要将每个文件分开;。
# cat rumenz; cat rumenz1; cat rumenz2
This is a rumenz file
This is the rumenz1 file.
This is rumenz2 file.
9. 使用标准输出和重定向操作符
我们可以将文件的标准输出重定向到一个新文件中,否则现有文件中带有 >(大于)符号。仔细,现有的内容rumenz1 将被内容覆盖 rumenz 文件。
# cat rumenz > rumenz1
10. 使用重定向运算符附加标准输出
在现有文件中附加 >>(双大于)符号。这里的内容rumenz 文件将附加在文件的末尾 rumenz1 文件。
# cat rumenz >> rumenz1
11. 使用重定向运算符重定向标准输入
当你将重定向与标准输入一起使用时<(小于符号),它使用文件名 rumenz2 作为命令的输入和输出将显示在终端中。
# cat < rumenz2
This is rumenz2 file.
12. 重定向包含在单个文件中的多个文件
这将创建一个名为 rumenz3 并且所有输出都将重定向到新创建的文件中。
# cat rumenz rumenz1 rumenz2 > rumenz3
13. 在单个文件中对多个文件的内容进行排序
这将创建一个文件 rumenz4 和输出 cat 命令通过管道进行排序,结果将被重定向到新创建的文件。
# cat rumenz rumenz1 rumenz2 rumenz3 | sort > rumenz4
- 上一篇: 苹果:Mac电脑不会受到Bash漏洞影响
- 下一篇: 日志分析平台——ELK安装配置(elk 日志)
猜你喜欢
- 2025-09-09 使用Docker搭建一个Mail邮箱系统_docker搭建邮件服务器
- 2025-09-09 Linux必学技能 | 17个案例带运维小白快速精通Awk命令,拿来即用
- 2025-09-09 稳定的Claude Code渠道,白嫖100刀
- 2025-09-09 如何写出安全的、基本功能完善的Bash脚本
- 2025-09-09 如何限制访问域名之外的请求都禁止访问,包括域名对应的ip
- 2025-09-09 代理 IP 地址与端口:核心概念、匹配逻辑及常见配置误区
- 2025-09-09 Linux重复操作太痛苦?Shell脚本让你1分钟搞定1小时活
- 2025-06-30 记录一次彻底清除挖矿病毒(挖矿 清退)
- 2025-06-30 linux计划任务管理(linux计划任务设置)
- 2025-06-30 Linux基本命令—修改命令别名(linux永久修改别名)
- 最近发表
-
- count(*)、count1(1)、count(主键)、count(字段) 哪个更快?
- 深入探索 Spring Boot3 中 MyBatis 的 association 标签用法
- js异步操作 Promise fetch API 带来的网络请求变革—仙盟创梦IDE
- HTTP状态码超详细说明_http 状态码有哪些
- 聊聊跨域的原理与解决方法_跨域解决方案及原理
- 告别懵圈!产品新人的接口文档轻松入门指南
- 在Javaweb中实现发送简单邮件_java web发布
- 优化必备基础:Oracle中常见的三种表连接方式
- Oracle常用工具使用 - AWR_oracle工具有哪些
- 搭载USB 3.1接口:msi 微星 发布 990FXA Gaming 游戏主板
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)