cat 是 Linux 系统中最基础、最常用的命令之一,它的全称是 Concatenate,意为“连接”。正如其名,它的核心功能是将文件内容连接起来并输出。
1. 基础用法:查看文件内容
这是 cat 最直接的用途,用于快速查看一个或多个文件的全部内容。
特点:它会将文件内容一次性全部输出到终端。
适用场景:查看内容较短的文本文件或配置文件。
2. 核心参数:让显示更清晰
cat 提供了一些实用的参数,可以帮助你更好地阅读和分析文件内容。
| | |
|---|
-n | | |
-s | | 将文件中连续的多个空行压缩成一个空行,使输出更紧凑。 |
-E | | |
常用组合示例:
cat -n script.sh # 查看脚本并显示所有行号cat -s log.txt # 查看日志,压缩多余的空行cat -A config.yaml # 排查配置文件中的隐藏字符或格式问题
3. 进阶技巧:创建、合并与追加
cat 的功能远不止查看文件,配合重定向符号 > 和 >> ,它还能进行文件操作。
创建新文件
通过 cat 从标准输入(键盘)读取内容来创建一个新文件。输入完成后,按 ZZ 保存并退出。
cat > newfile.txt这是新文件的第一行内容。这是第二行。按 Ctrl + D 结束
合并文件
cat 可以将多个文件的内容按顺序拼接起来,并输出到一个新文件中。
cat file1.txt file2.txt > combined.txt
这个命令会将 file1.txt 和 file2.txt 的内容合并,并保存到 combined.txt 中。
追加内容
使用 >> 可以将一个文件的内容追加到另一个已存在文件的末尾。
cat file2.txt >> file1.txt
这个命令会将 file2.txt 的内容添加到 file1.txt 的后面,而不会覆盖 file1.txt 原有的内容。
4. 实用场景与最佳实践
快速清空文件
这是一个非常高效但需要谨慎使用的技巧。它利用 /dev/null (一个空设备) 来清空目标文件的内容。
cat /dev/null > filename.txt
配合管道处理大文件
由于 cat 会一次性输出所有内容,直接用它查看大型日志文件可能会导致终端卡顿或信息快速滚屏,难以阅读。最佳实践是将其与 less 或 grep 等命令通过管道 | 结合使用。
这样可以一页一页地浏览文件内容,按 q 键退出。
cat application.log | grep "ERROR"
这个命令可以快速从日志中筛选出所有包含 "ERROR" 的行。