linux - 如何使用sed删除带通配符的字符串

标签 linux unix text sed

文件1:

<a>hello</b> <c>foo</d>
<a>world</b> <c>bar</d>

是一个可以处理的文件示例。如何删除所有具有 <c>*</d> 的字符串使用 sed?

最佳答案

以下行将从 <c> 中删除所有文本至 </d>包括:

sed -e 's/<c>.*<\/d>//'

s/...// 里面的位是一个正则表达式,并不是真正的通配符,与 shell 使用的方式相同,因此您可以将任何可以放入正则表达式中的内容都可以放入其中。

关于linux - 如何使用sed删除带通配符的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1592892/

相关文章:

c - 从被调用函数获取局部变量到被调用函数

text - 如何让greasemonkey 检查是否在页面上找到文本

html - 不同设备的字体变化

linux - sudoers 中的用户没有写权限

c++ - 静态链接 libstdc++ : any gotchas?

java - 如何使用服务器端代码在客户端计算机中创建和执行批处理文件?

linux - 通过 JSP 从一台服务器到另一台服务器的 Telnet 端口连接

html - 在某个断点设置为0时padding不消失

linux - 用于删除文件中单词的 Shell 脚本

linux - Live Linux grep 脚本 - 只打印肯定的结果