sed 行编辑器

– sed [options] ‘AddressCommand’ file …

  • -n:静默模式,不再默认显示模式空间中的内容
  • -i:直接修改原文件
  • -e SCRIPT -e SCRIPT:可以同时执行多个脚本
  • -f /PATH/TO/SED_SERIPT
  • -r:表示使用扩展正则表达式

sed: 行编辑器Command
d:删除符合条件的行
p:显示符合条件的行
a \string:在指定的行后面追加新行,内容为string
\n:可以用来换行
i \string:在指定的行后面追加新行,内容为string
r FILE:将指定的文件的内容添加至符合条件的行处
w FILE:将地址指定范围内的行另存至指定文件中;
s/pattern/string/修饰符:查找并替换,默认只替换每行中第一次被模式匹配到的字符串
g: 行内全局替换
i: 忽略字符大小写
s: s###,s@@@
(), \1,\2

sed:行编辑器Address
可以没有
给定范围
查找指定行/str/

测试文档sed.txt内容:

zhangsan
hello world
lisi
wangwu 4
zhaoliu 4
wanglaowu 9

测试:
(1)在第一行后插入wanglaowu

sed "la\wanglaowu" sed.txt

(2)删除包含数字的行

sed "/[0-9]/d" sed.txt

(3)只显示包含数字的行

sed -n "/[0-9]/p" sed.txt

(4)替换,可以使用正则表达式
sed “s/168.40/168.89/” ifcfg-

sort排序文件的行

-n 按数值排序
-r 倒序
-t 自定义分隔符
-k 选择排序列
-u 合并相同行
-f 忽略大小写

cut显示切割的数据

-f 选择显示的列
-s 不显示没有分隔符的列
-d 自定义分隔符