在一个sed匹配负面和正面模式[重复]

问题描述 投票:-2回答:2

这个问题在这里已有答案:

我有一个制作sed命令的问题,它将改变行,=sometext=发生在哪里并将其更改为另一种模式,但是当https在该行中出现时不会这样做。我不知道如何更改此命令:sed -i 's/=\([^=]*\)=/{{\1}}/g'

regex linux sed regex-negation regex-group
2个回答
0
投票

您将要阅读有关匹配行的sed手册:https://www.gnu.org/software/sed/manual/sed.html第4章:

以下命令仅在不包含单词'apple'的行中将'hello'替换为'world':

sed '/apple/!s/hello/world/' input.txt > output.txt

0
投票

使用多个块,例如:

sed '/=sometext=/ { /https/b; s/.../.../; }'
© www.soinside.com 2019 - 2024. All rights reserved.