【发布时间】:2013-04-14 19:31:28
【问题描述】:
感谢阅读。
我有一个包含一些简单用户信息的纯文本文件
问题是,有时其中一项丢失了。
注意 Norman 和 Reggie 如何显示电子邮件地址,但 Missy 没有:
Name: Norman Normalrecord
Email: norman@ooga.com
Addr: 123 Main street
Name: Missy Missington
Addr: 789 Back street
Name: Reggie Regularrecord
Email: reggie@booga.com
Addr: 456 Middle street
我想 grep / sed 并说“如果找不到电子邮件地址,请用文本 missing_email_addr 替换”,所以我得到了这个结果:
Norman Normalrecord
norman@ooga.com
123 main street
Missy Missington
MISSING_EMAIL_ADDR
789 back street
Reggie Regularrecord
reggie@booga.com
456 middle street
问题是,在我所有的实验中,当什么都没有找到时,grep / sed 绝对不会产生任何结果,所以我什至无法对 global-replace 进行第二次传递。
我的梦想是(显然是伪 grep),它提供在搜索未找到任何内容时要打印的内容:
grep /Name:/MISSING_NAME/email:/MISSING_EMAIL_ADDR/Addr:/MISSING_STREET_ADDR/
有没有办法做这样的事情?再次感谢。
【问题讨论】:
-
人与人之间总是有一个空行吗?