名称
cat - 连接文件并打印到标准输出
简介
cat [选项]... [文件]...描述
cat 命令读取每个 文件 的內容,依次写入标准输出。如果没有指定文件或文件为 -,则从标准输入读取。
该命令主要用于:
在屏幕上显示小型文件的内容。
将多个文件合并成一个文件。
创建新文件或向已有文件追加内容。
配合管道实现文本处理。
选项
退出状态
0 – 成功。
>0 – 发生错误(例如文件无法读取)。
常用示例
1. 显示文件内容
cat file.txt2. 显示多个文件内容(依次输出)
cat file1.txt file2.txt3. 将多个文件合并为一个新文件
cat file1.txt file2.txt > merged.txt4. 将文件内容追加到另一个文件末尾
cat file1.txt >> existing.txt5. 从标准输入创建文件(输入完成后按 Ctrl+D 结束)
cat > newfile.txt6. 向文件追加多行文本(同样以 Ctrl+D 结束)
cat >> existing.txt7. 显示文件并显示行号(包括空行)
cat -n file.txt8. 显示文件并显示行号(跳过空行)
cat -b file.txt9. 压缩连续空行
cat -s file.txt10. 显示所有不可打印字符(如制表符、行尾)
cat -A file.txt或使用组合选项:
cat -vET file.txt11. 将文件内容通过管道传递给其他命令
cat file.txt | grep "pattern"(虽然许多情况下可以直接使用 grep pattern file.txt,但 cat 管道在某些脚本中仍很常见。)
12. 使用 - 替换标准输入
cat file1.txt - file2.txt此命令先输出 file1.txt,然后等待标准输入(用户键盘输入),输入结束后再输出 file2.txt。
注意事项
当使用
cat查看大型文件时,终端会被快速填满,难以阅读。此时应使用less或more分页查看。不要使用
cat将二进制文件直接显示在终端,这可能导致终端混乱或异常。重定向输出时务必小心:
>会覆盖目标文件,如果目标文件是输入文件之一,可能导致文件内容丢失。例如cat file.txt > file.txt会清空file.txt。在无任何参数时,
cat会等待标准输入,此时可以输入内容,按 Ctrl+D 结束。
相关命令
tac– 反向显示文件内容(最后一行先显示)。head– 显示文件开头部分。tail– 显示文件结尾部分。more/less– 分页查看文件。nl– 为文件添加行号,功能与cat -b类似。od– 以八进制或其他格式显示文件(用于查看二进制数据)。