sed以行为单位处理数据,sed有两种语法格式:命令行模式、脚本模式,直接使用sed修改的是缓冲区中数据而非原文件数据,sed更适合编辑匹配到的文本
一、语法格式
#使用格式
sed [选项] '处理动作' 文件名
选项中包括如下:
处理动作包括如下:
二、简单示例
文件(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——在第4行后添加hello
简单示例3——将第4行内容替换为你好
简单示例4——删除文件最后一行
简单示例5——查找文档中hello world并将其替换为ROOT
简单示例五——注释掉前五行
简单示例六——将b文件内容增加到1.txt文件下方
拓展:
简单示例7——多条sed命令
拓展:
第一步,指定解释器:#!/bin/sed -f
第二步,编写相关内容
第三步,调用格式如下:
#不用考虑权限
sed -f 脚本文件名 处理文件名
#需赋予其文件可执行权限
./脚本文件名 处理文件名
简单示例如下:
awk以列为单位处理数据,与grep、sed并称"linux三剑客",awk 更适合格式化文本,对文本进行较复杂格式处理
一、语法格式
awk [选项] '条件1{执行动作} 条件2{执行动作}...' 文件名
简单要点说明:
二、简单示例
文件(2.txt)准备如下:
1 tom 12 男,hello
2 jack 13 女,hel
3 jerry 14
简单示例1——输出文件中第一列和第四列
简单示例二——格式化输出第一列,第三列
简单示例三——输出第二行第一列的内容
简单示例四——输出第一行第一列第二行第一列的内容
简单示例五——指定分隔符为逗号
简单示例六——使用内建变量指定逗号为分隔符
简单示例七——使用正则(查找第一列为1的1-4列数据)
第一步,指定解释器:#!/bin/awk -f
第二步,编写相关脚本
第三步,调用格式如下:
#该方式调用不用考虑权限和文件后缀
awk -f 脚本名 文件名
#该方式需要考虑权限问题
./脚本文件名 相关文件名
简单示例如下: