Linux cat命令详解使用:高效文本内容管理

cat是 Linux 中最常用的命令之一,主要用于查看文件内容、合并文件以及重定向输出。它可以一次性显示文件内容,也可以将多个文件的内容串联显示出来。

基本语法
bash 复制代码
cat [选项] [文件...]
常用参数选项
  • -n:为输出的每一行添加行号。
  • -b:为非空行添加行号。
  • -s:压缩连续的空白行成一行。
  • -A:显示所有不可见字符(例如换行符 $ 和制表符 ^I)。
  • -T:将制表符显示为 ^I
  • -v:显示不可打印字符(除了换行和制表符)。
1. 查看文件内容
  • 查看文件的全部内容:

    bash 复制代码
    cat file.txt

    这会直接在终端中显示 file.txt 的内容。

2. 将多个文件的内容连接并输出
  • 合并文件内容:

    bash 复制代码
    cat file1.txt file2.txt

    这会将 file1.txtfile2.txt 的内容连接并输出。

  • 将多个文件的内容合并输出到一个新的文件:

    bash 复制代码
    cat file1.txt file2.txt > merged.txt

    file1.txtfile2.txt 的内容将被合并并保存到 merged.txt 中。

3. 为文件内容添加行号
  • 为每一行添加行号:

    bash 复制代码
    cat -n file.txt

    输出:

    txt 复制代码
    1  Line one
    2  Line two
    3  Line three
  • 仅为非空行添加行号:

    bash 复制代码
    cat -b file.txt

    输出:

    txt 复制代码
      1  Line one
    
      2  Line two
4. 显示不可见字符
  • 显示文件中的不可见字符:

    bash 复制代码
    cat -A file.txt

    输出:

    txt 复制代码
    Line one$  (换行符显示为$)
    Line two^I  (制表符显示为^I)
5. 压缩连续的空白行
  • 将连续的空白行压缩为一行:

    bash 复制代码
    cat -s file.txt

    如果文件中有连续的空白行,它们将被压缩成一行。

6. 创建或追加文件内容
  • 从终端输入创建一个新文件:

    bash 复制代码
    cat > newfile.txt

    你可以在终端中输入内容,按 Ctrl+D 结束输入。

  • 向已有文件追加内容:

    bash 复制代码
    cat >> file.txt

    在终端输入内容后按 Ctrl+D 结束,它会将输入追加到 file.txt 的末尾。

7. 显示部分文件内容

如果文件内容非常大,可以结合 catheadtail 等命令来查看部分内容:

  • 查看文件的前 10 行:

    bash 复制代码
    cat file.txt | head -n 10
  • 查看文件的最后 10 行:

    bash 复制代码
    cat file.txt | tail -n 10
8. 重定向和管道

cat 常与其他命令组合使用,以下是几个常用实例:

  • 重定向到新文件:

    bash 复制代码
    cat file.txt > newfile.txt
  • grep 一起使用过滤内容:

    bash 复制代码
    cat file.txt | grep "search_term"
  • sort 一起使用进行排序:

    bash 复制代码
    cat file.txt | sort

cat 是一个功能强大的命令,特别适合快速查看文件、合并文件以及处理文本流。在日常的文件操作中,cat 与其他命令结合使用能够极大地提高处理效率。

相关推荐
fox_lht3 小时前
12.3.使用生命周期使引用一直有用
开发语言·后端·rust
xcLeigh3 小时前
KES大小写混合路径+国产OS/文件系统兼容实战
linux·数据库·文件系统·兼容性·麒麟·欧拉·kes
霍格沃兹测试学院-小舟畅学3 小时前
浏览器自动化的下一层:为什么 CloakBrowser 把指纹问题推到了源码层?
运维·自动化
YuanDaima20483 小时前
Docker 核心架构与底层技术原理解析
运维·人工智能·docker·微服务·容器·架构·个人开发
weixin_417257064 小时前
ubuntu系统-dify-相关文件配置
linux·运维·ubuntu
fengxin_rou4 小时前
用户模块架构实战:DTO 与 Domain 分层、Optional 空值处理、事务只读优化详解
java·后端·架构·用户实战
xiaoye-duck4 小时前
《Linux系统编程》Linux权限(下):从 umask 到粘滞位的深度解析
linux
浓黑的daidai4 小时前
day-02
linux·运维·elk
sbjdhjd4 小时前
02(上)| K8s 资源管理全流程:命令、配置、生产避坑
linux·运维·云原生·kubernetes·云计算·podman·kubelet
MXsoft6184 小时前
**365****天零宕机背后:高可用业务系统的监控设计逻辑**** **
运维