[学习分享] 已经解决.结贴 命令 sed - 文本替换失败 ([-i]选项使用位置)

weixin_38061328 2015-08-30 03:16:19

本帖最后由 sunzhiguolu 于 2015-09-15 13:43 编辑 我有一个名为contacts的文档其中记录了一些联系人的信息.并且其中包含5个字段以":"冒号进行分割,分别为如下字段:
姓氏:名字:所属组.工作单位:电话号码:名字缩拼
字段示意:
所属组:g<12345>.工作单位 , 工作单位使用大写首字母表示,例如:医院 <=> YY , 机关 <=> JG , 12345表示电话号码
示例:
zhang:san:g<12345>.YY:888:zs
li:si:g<12345>.JG:999:ls

我希望将contacts文档中所属组在g<12345>中的那些联系人,将所属组后面的 ".YY" 或者 ".JG" 替换为 ":wk<yy>" 或者 "wk<jg>"

替换后的结果如下:
zhang:san:g<12345>:wk<yy>:888:zs
li:si:g<12345>:wk<jg>:999:ls

观看了一下执行效果:
此处的输出结果按照预期成功的进行了替换操作,并将大写转换成小写的形式.sed -nr '
/g<12345>/{
s/\.([a-z]{2})/:wk<\L\1\E>/ip
}' contacts
复制代码实际操作的sed命令:sed -ir '
/g<12345>/{
s/\.\([a-z]{2}\)/:wk<\L\1\E>/i
}' contacts
复制代码执行后,没有任何提示.利用grep 命令查看结果contacts文档没有发生任何改变.

还请各位热心朋友帮忙看下,我在命令的什么地方出了问题!
...全文
58 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧