sed用法实例
替换操作:s命令
替换文本中的字符串:
sed 's/book/books/' file
**-n 选项 **和 **p 命令 **一起使用表示只打印那些发生替换的行:
sed -n 's/test/TEST/p' file
直接编辑文件选项-i,会匹配file文件中每一行的第一个book替换为books:
sed -i 's/book/books/g' file
全面替换标记g
使用后缀 /g
标记会替换每一行中的所有匹配:
sed 's/book/books/g' file
当需要从第N处匹配开始替换时,可以使用 /Ng
:
echo sksksksksksk | sed 's/sk/SK/2g'
skSKSKSKSKSK
删除操作:d命令
删除文件的第2行到末尾所有行,直接编辑文件-i
:
sed '2,$d' file
选定行的范围:,(逗号)
所有在模板test和check所确定的范围内的行都被打印:
sed -n '/test/,/check/p' file
打印从第5行开始到第一个包含以test开始的行之间的所有行:
sed -n '5,/^test/p' file
# 打印 5 到 10 行
sed -n '5,10p' file
# 截断日志
sed -n '/2019-09-02 18:39:43,297/,/2019-09-02 18:39:43,297/p' zookeeper.out > gg