sed与正则用法收集
Posted 叶常绿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sed与正则用法收集相关的知识,希望对你有一定的参考价值。
1.将文本每行最后七个字符换成!号
sed -n \'s#.\\{7\\}$#!#p\' ooo
在文本的每一行前添加#符号
sed \'s/^.\\?/#&/\' passwd
& 替代符 替代前面所匹配的
? 数量符 需要转义 表示1个或0个
/ 分隔符 此处三个都是 可以用别的符号代替
2.将某个目录下所有文件文本中的kkkkk 换成 ddddd
sed -i \'s/kkkkk/ddddd/g\' `grep -rl mydir`
grep 中 -r递归 -l输出文件名
3.截取文本中的某一段(IP地址)并存放与文件中
(1)cat eth0 | sed \'s/.*t addr://\' | sed \'s/ Bc.*//\' |xargs echo > ech0
(2)sed -i -e \'s/.*t addr://\' -e sed \'s/B.*//\' eth0
.* 表示任意字母任意数量
-e 表示多点编辑
-i 表示修改文件
4.删除第6行到最后一行
sed \'6,$d\' file
5.删除第1行 和 第3行
sed -e \'1d\' -e \'3d\' file
6.再第3行上面插入两行
sed \'3a hello world \\
>the text\' file (>不是我打上去的是自动显示的)
7.替换行
sed \'3c33333333\' file
替换第三行
8.对字符操作
8-1删除某个字符
sed \'/root/d\' file
把file中的root删除
8-2显示包含摸个字符的行
sed -n \'/root/n\' file
把file中包含root的行显示出来
8-3检索行并于此执行命令 命令间分好隔开
sed -n \'/root/{s/bash/bullet;p;q}\' file
file中含root的行上 把bash改成bullet并打印出来 最后退出
s替换 p打印 q退出
未完待续。。。
以上是关于sed与正则用法收集的主要内容,如果未能解决你的问题,请参考以下文章