标题: [文本处理] 批处理替换指定字符 [打印本页]
作者: keshun 时间: 2014-3-6 12:16 标题: 批处理替换指定字符
本帖最后由 keshun 于 2014-3-6 12:29 编辑
求代码,把实际地址(bindmac)的“-”替换成“:”,但其他的“-”不能变,谢谢!!复制代码
我这代码是所有替换,要进行修改,望高手给予帮助。
a.txt
user=2228 bindmac=00-e0-4c-1e-fc-1a expire_since=2014-03-07 desc=-
user=2198 expire_since=2014-04-27 bindmac=00-e0-4c-27-58-c1 desc=-
替换成:
user=2228 bindmac=00:e0:4c:1e:fc:1a expire_since=2014-03-07 desc=-
user=2198 expire_since=2014-04-27 bindmac=00:e0:4c:27:58:c1 desc=-
作者: DAIC 时间: 2014-3-6 12:47
- gawk "{for(i=1;i<=NF;i++)if($i~/bindmac=/)gsub(/-/,\":\",$i);print}" a.txt
复制代码
作者: DAIC 时间: 2014-3-6 12:49
- sed -r "s/bindmac=(..)-(..)-(..)-(..)-(..)-(..)/bindmac=\1:\2:\3:\4:\5:\6/" a.txt
复制代码
作者: keshun 时间: 2014-3-6 14:33
回复 3# DAIC
谢谢,试过上面两个代码,没有替换成功,是否还须修改下。
作者: DAIC 时间: 2014-3-6 15:17
回复 4# keshun
你自己在代码后面加上重定向就行了
> b.txt
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |