• sed与awk


    sed概述

    sed以行为单位处理数据,sed有两种语法格式:命令行模式、脚本模式,直接使用sed修改的是缓冲区中数据而非原文件数据,sed更适合编辑匹配到的文本

    sed使用

    命令行模式

    一、语法格式

    #使用格式
    sed [选项] '处理动作' 文件名
    
    • 1
    • 2

    选项中包括如下:
    在这里插入图片描述
    处理动作包括如下:
    在这里插入图片描述
    二、简单示例

    文件(1.txt)准备,文件内容如下:

    gle
    gooogle
    taobao.com
    taotaobaobao.com
    
    jingdong.com
    dingdingdongdong.com
    10.1.1.1
    192.168.21.133
    hello world
    helloworld yourself
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    简单示例1——输出第四行内容
    在这里插入图片描述
    简单示例2——在第4行后添加hello
    在这里插入图片描述
    简单示例3——将第4行内容替换为你好
    在这里插入图片描述
    简单示例4——删除文件最后一行
    在这里插入图片描述
    简单示例5——查找文档中hello world并将其替换为ROOT
    在这里插入图片描述

    • s代表搜索模式
    • /表示分隔符,用户可自行定义,示例如下:

    在这里插入图片描述

    • g表示全局搜索,p表示打印

    简单示例五——注释掉前五行
    在这里插入图片描述
    简单示例六——将b文件内容增加到1.txt文件下方
    在这里插入图片描述
    拓展:
    在这里插入图片描述
    简单示例7——多条sed命令
    在这里插入图片描述
    拓展:
    在这里插入图片描述

    脚本模式

    第一步,指定解释器:#!/bin/sed -f
    第二步,编写相关内容
    第三步,调用格式如下:

    #不用考虑权限
    sed -f 脚本文件名 处理文件名
    #需赋予其文件可执行权限
    ./脚本文件名 处理文件名
    
    • 1
    • 2
    • 3
    • 4

    简单示例如下:
    在这里插入图片描述

    awk概述

    awk以列为单位处理数据,与grep、sed并称"linux三剑客",awk 更适合格式化文本,对文本进行较复杂格式处理

    awk使用

    命令行模式

    一、语法格式

    awk [选项] '条件1{执行动作} 条件2{执行动作}...' 文件名
    
    • 1

    简单要点说明:
    在这里插入图片描述

    二、简单示例
    文件(2.txt)准备如下:

    1 tom 12  男,hello
    2 jack 13 女,hel
    3 jerry 14
    
    • 1
    • 2
    • 3

    简单示例1——输出文件中第一列和第四列
    在这里插入图片描述

    • 列的划分标准为空格或TAB(制表符)

    简单示例二——格式化输出第一列,第三列
    在这里插入图片描述

    • 格式化输出只能使用printf

    简单示例三——输出第二行第一列的内容
    在这里插入图片描述
    简单示例四——输出第一行第一列第二行第一列的内容
    在这里插入图片描述
    简单示例五——指定分隔符为逗号
    在这里插入图片描述
    简单示例六——使用内建变量指定逗号为分隔符
    在这里插入图片描述

    • BEGIN在读取内容前执行常用作初始化,END在所有操作执行完毕后执行,简单示例如下:
      在这里插入图片描述

    简单示例七——使用正则(查找第一列为1的1-4列数据)
    在这里插入图片描述

    • ~ 和 !~分别代表匹配正则表达式和不匹配正则表达式

    脚本模式

    第一步,指定解释器:#!/bin/awk -f
    第二步,编写相关脚本
    第三步,调用格式如下:

    #该方式调用不用考虑权限和文件后缀
    awk -f 脚本名 文件名
    #该方式需要考虑权限问题
    ./脚本文件名 相关文件名
    
    • 1
    • 2
    • 3
    • 4

    简单示例如下:
    在这里插入图片描述

  • 相关阅读:
    个人商业模式,如何让自己变得值钱
    考过HCIP入职心仪公司,分享华为认证学习经历及心得
    centos7.6 安装 rlwrap-0.45报 Requires: /usr/bin/python3
    《Python神经网络编程》学习笔记
    java开发常见面试问题
    【洛谷 P1147】连续自然数和 题解(等差数列求和+因式分解+解二元一次方程)
    [HTML]常用标签的使用
    Rust编程基础之引用与借用
    插件化原理
    基于单片机的北斗定位无人机救火系统(两种程序:单片机与android系统app程序源码)
  • 原文地址:https://blog.csdn.net/weixin_51371629/article/details/126556481