linux(sed)
sed 可以编辑,只能按行整行提取
awk 不能编辑,可以按行分隔提取
grep 擅长过滤
sed -参数 ‘规则’ 文件
对文件逐行提取,然后把提取的行按规则执行,执行完毕后,再将行输出到屏幕(此步骤为默认,-n为取消默认输出)。
参数:
-i 将按规则处理后的内容覆盖至源文件(将屏幕显示出来的内容保存至源文件)
-n 取消默认输出
-r 正则
规则:定位+命令
定位:默认所有行
行号定位:
sed '2ixxxxxxxxxxxxxxxx' 2.txt 第2行前面插入xxxxxxxxx
sed '3,5axxxxx' 2.txt 第3,4,5行后面加xxxxxx
sed '3p;5p' 2.txt 第3,5行打印一遍(然后还有默认的输出)
正则定位:
/^正则表达式$/
命令:
'i' 插入
'a' 追加
‘p’ 输出
'd' 删除
‘c’ 替换指定的整行
‘s/old/new/gi’ 替换指定字符,g表示全局,i表示不区分大小写
sed '3,$d' 删除第3至最后一行
sed '1,3s/old/new/'
sed '/^aaa/s/old/new/'
sed '2,5c balabala' 将第2-5行替换成balabala一行

浙公网安备 33010602011771号