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 与其他命令结合使用能够极大地提高处理效率。

相关推荐
Dovir多多8 分钟前
渗透测试入门学习——php与mysql数据库连接、使用session完成简单的用户注册、登录
前端·数据库·后端·mysql·安全·html·php
难以触及的高度11 分钟前
source ~/.bash_profile有什么用
开发语言·bash
KookeeyLena413 分钟前
如何搭建一个ip池用来做数据抓取用
服务器·网络·tcp/ip
Flying_Fish_roe15 分钟前
Spring Boot-WebSocket相关问题
spring boot·后端·websocket
骆晨学长21 分钟前
基于springboot学生健康管理系统的设计与实现
java·开发语言·spring boot·后端·spring
骆晨学长22 分钟前
基于Springboot的医疗健康助手开题报告
java·spring boot·后端
我是小酒22 分钟前
掌握 Spring:从新手到高手的常见问题汇总
java·后端·spring·springboot
if时光重来24 分钟前
springboot项目实现导出excel动态设置表头
spring boot·后端·excel
code.song24 分钟前
校园社团|基于springBoot的校园社团信息管理系统设计与实现(附项目源码+论文+数据库)
数据库·spring boot·后端
白总Server29 分钟前
php语言基本语法
开发语言·ide·后端·golang·rust·github·php