【发布时间】:2020-04-06 18:00:24
【问题描述】:
需要删除部分 url 并保持其余部分不变。 以下是我的文本文件的一部分,其中包含这样的内容
{
host = "http://nxt-newepisode.xcfm.crata.dive.com/err1.2.2/table/kenny.xml.gz"
}
{
host = "http://nxt-secondepisode.xcfm.crata.dive.com/err1.2.2/table/kenny.xml.gz"
}
我想从上面的两个网址中摆脱 nxt- 并保留其余的。我知道使用
sed -i 's/nxt-//g' FILE
可以解决问题,但我想具体一点,只删除第一个 url 的 nxt- 和第二个 url 的 nxt- 而不更改文件的其余部分。
我正在尝试这个
sed -i '/host/s#"http://nxt-newepisode.*"#" "#' FILE
【问题讨论】:
-
这里有人给出了这个答案 sed -i -E 's~^(\s*host\s+=\s+"http://)nxt-((new|second)episode)~ \1\2~' 文件。这行得通。需要解释一下