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

相关推荐
冒泡的肥皂9 分钟前
强大的ANTLR4语法解析器入门demo
后端·搜索引擎·编程语言
xian0gang9 分钟前
rk3588 区分两个相同的usb相机
linux
这儿有一堆花19 分钟前
安全访问家中 Linux 服务器的远程方案 —— 专为单用户场景设计
linux·服务器·安全
IT_陈寒34 分钟前
Element Plus 2.10.0 重磅发布!新增Splitter组件
前端·人工智能·后端
RussellFans44 分钟前
Linux 文本三剑客(grep, awk, sed)
linux·运维·服务器
猴哥聊项目管理1 小时前
什么是DevOps智能平台的核心功能?
运维·项目管理·制造·devops·软件·项目管理软件·软件分享
Chuncheng's blog1 小时前
CentOS 7如何编译安装升级gcc至7.5版本?
linux·运维·c++·centos
听风吹等浪起1 小时前
CentOS在vmware局域网内搭建DHCP服务器【踩坑记录】
linux·服务器·centos
有梦想的攻城狮1 小时前
spring中的@RabbitListener注解详解
java·后端·spring·rabbitlistener
明月看潮生1 小时前
青少年编程与数学 01-011 系统软件简介 04 Linux操作系统
linux·青少年编程·操作系统·系统软件·编程与数学