Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
假设我有一个如下所示的 XML:
<a> <b>...</b> <c>...</c> <c>...</c> <d>..</d> </a>
如何告诉 sed(在 Mac 上)仅将第一次出现的 <c>...</c> 更改为 <e>...</e>,同时仍保留其间的内容 (\1)开始和结束标签?
谢谢
这应该这样做:
sed '1,/<c>/s/^<c\(.*\)c>$/<e\1e>/'
您可以像这样使用 sed:
sed -E '1,/<c>.*<\/c>/s#<c>(.*)</c>#<e>\1</e>#' inFile