cat
命令是 Linux/Unix 系统中非常常用的命令,全称是 “concatenate”(连接),它的主要作用是:
- 查看文件内容
- 合并文件
- 创建新文件
🧱 一、基本语法
cat [选项] [文件...]
其中:
选项
是可选参数,用来控制输出方式。文件
是你要读取的一个或多个文件名。
🧰 二、常用功能和参数说明
1. 查看文件内容
cat file.txt
输出整个文件内容到终端。适用于小文件查看。
2. 创建新文件
cat > newfile.txt
输入内容后按 Ctrl + D
结束输入,内容就被写入 newfile.txt
中。
注意:
>
会覆盖原文件,如果newfile.txt
已存在,会被清空。
3. 追加内容到文件
cat >> existing.txt
同样输入内容后按 Ctrl + D
结束输入,但这次是追加,不会覆盖原文件。
4. 合并多个文件
cat file1.txt file2.txt > combined.txt
把两个文件内容合并后输出到 combined.txt
。
🛠️ 三、常用选项详解
选项 | 含义 |
---|---|
-n | 为所有输出行编号 |
-b | 为非空行编号(常用于排版输出) |
-s | 压缩连续的空白行成一行 |
-E | 在每行结尾加上 $ 符号,便于查看行结束 |
-T | 将 TAB 制表符显示为 ^I |
-A | 等价于 -vET ,显示不可见字符,常用于调试 |
示例:
cat -n file.txt # 行号(包括空行)
cat -b file.txt # 仅非空行显示行号
cat -s file.txt # 去掉多余空行
cat -E file.txt # 每行结尾加 $
📌 四、一些实用例子
例 1:快速查看多个小文件内容
cat file1.txt file2.txt
例 2:合并日志文件
cat log1.txt log2.txt >> all_logs.txt
例 3:结合 grep
使用
cat file.txt | grep "error"
例 4:查看并编号内容(调试用)
cat -n file.txt
⚠️ 五、使用 cat
的注意事项
- 大文件不建议用
cat
查看,容易刷屏,建议用less
或more
。 - 使用
cat > file
时要小心,因为它会覆盖原文件。 - 常被用来配合管道符
|
与其他命令连用,如grep
、awk
、sort
等。
🧠 六、拓展知识:「UUOC」误用
在 Linux 圈子里,有个术语叫 “UUOC”(Useless Use of Cat):
cat file | grep "xxx" # 不推荐
grep "xxx" file # 推荐
除非你要多重处理或作为流程的第一步,否则不推荐多余地使用 cat
。