当前位置: 首页 > news >正文

linux-修改文件命令(补充)

1. Tac命令

        tac 命令是 Linux 系统中一个用于逆序显示文件内容的工具。它的名称是 "cat" 的反向拼写,作用与 cat 命令相反。cat 命令按文件内容的原始顺序显示,而 tac 命令则从文件的最后一行开始,逐行反向显示,直到第一行

实例:

1. 输出文件的逆序内容:$ tac file.txt

此命令会将file.txt文件的内容以逆序的方式输出。

2. 将多个文件合并后以逆序的方式输出:$ tac file1.txt file2.txt file3.txt

该命令会将file1.txt、file2.txt和file3.txt的内容合并后以逆序的方式输出。

    2. sed命令

            在 Linux 和 Unix 系统中,sed(stream editor)是一款功能强大且灵活的文本处理工具。它可以在不需要用户交互的情况下,对文本进行多种形式的编辑和转换。

    基本语法如下sed [选项] '脚本' 文件

    选项:可以是 -e(表达式),-f(脚本文件)等。

    脚本:包含一个或多个 sed 命令。

    文件:要处理的文本文件。

    常用选项:

    • -e 脚本 或 --expression=脚本:直接在命令行中添加 sed 命令。

    • -f 脚本文件 或 --file=脚本文件:从指定的脚本文件中读取 sed 命令。

    • -n 或 --quiet 或 --silent:仅显示由 sed 命令处理的行。

    • -i[SUFFIX] 或 --in-place[=SUFFIX]:直接编辑文件内容,原文件内容会被替换,如果指定了 SUFFIX,则会保存备份。

    替换文本 (s)

    基本格式为:

    1. sed 's/原文本/新文本/选项' 文件
    2. g:全局替换,替换行内所有匹配的文本。
    3. N:替换第 N 个匹配项。

      3. Awk命令

       awk是一种强大的文本处理工具,主要用于模式扫描和文本处理

      语法结构:

      awk '模式'     file  # 默认就是输出 不需要加动作

      awk '模式+动作' file

      可以将其他命令的输出|作为awk命令的输入:df -h|awk 'NR==2'  

       awk取行:

      语法结构:

      awk 'NR==3' fileNR awk的内置变量,存储着每行的行号

      符号:

      1. == 等于第几行
      2. >  大于第几行
      3. >= 大于等于第几行
      4. <  小于第几行
      5. <= 小于等于第几行
      6. != 不等
      7. && 并且 类似sed的 1,3
      8. || 或者

      awk取列

       awk '{print $1}' file # 取出文件中的第1列默认按照空格或者tab键分隔成列;如果没有空格或者tab键,awk会将整行看成一列;在awk中一切在动作中的字符串都被看做是变量,加上双引号则视为普通的字符串

      awk内置变量:

      1. $0  # 表示整行
      2. $1  # 表示文件的第1列
      3. $2  # 表示文件的第2列
      4. ,   # 逗号表示空格
      5. NF  # 表示每一行最后一列的列号
      6. awk '//' file    # 模糊查找文件中的字符串
      7. awk '//,//' file # 区间范围
      http://www.lqws.cn/news/523729.html

      相关文章:

    1. IT运维效率提升: 当IT监控遇上3D可视化
    2. 三步实现B站缓存视频转MP4格式
    3. 记一次AWS 中RDS优化费用使用的案例
    4. Postman鉴权动态传参?对比脚本变量vs环境变量!
    5. 理论加案例,一文读懂数据分析中的分类建模
    6. 通过pyqt5学习MVC
    7. 代理型 AI 重塑营销格局:国产 R²AIN SUITE 如何破解数据与技术瓶颈,实现 AI 赋能全链路提效
    8. VScode常用快捷键【个人总结】
    9. 2024年AEI SCI1区TOP,强化学习人工兔优化算法RLTARO+山地森林地形无人机编队路径规划,深度解析+性能实测
    10. Dify、n8n、Coze、FastGPT 和 Ragflow 对比分析:如何选择最适合你的智能体平台?
    11. Wpf的Binding
    12. 数据库1.0
    13. Python 爬虫入门:从数据爬取到转存 MySQL 数据库
    14. 【Ansible】Ansible入门
    15. Git常用操作详解
    16. Python核心可视化库:Matplotlib与Seaborn深度解析
    17. React 第六十四节Router中HashRouter的使用详细介绍及案例分析
    18. 重置 MySQL root 密码
    19. 基于STM32的智能节能风扇的设计
    20. KNN算法(K近邻算法)
    21. K8s在centos7安装及kubectl
    22. 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | BackgroundSlider(背景滑块)
    23. 设备维修全流程记录,提升设备运维效率
    24. 前端面试专栏-主流框架:13.vue3组件通信与生命周期
    25. 【MPC】实战:基于MPC的车辆自适应巡航控制 (ACC) 系统设计
    26. 《大模型 Agent 应用实战指南》第2章:商业目标与 Agent 能力边界定义
    27. APISIX
    28. 智慧校园电子班牌系统源码的开发与应用,基于Java/SpringBoot后端、Vue2前端、MySQL5.7数据库
    29. LeetCode 3298.统计重新排列后包含另一个字符串的子字符串数目2
    30. 北斗导航 | 基于改进奇偶矢量法的CAT I精密进近RAIM算法