从字符串中删除单词和字符

从字符串中删除单词和字符

有没有方法可以删除这个字符串

"name": "_acme-challenge",

只剩下:

_acme-challenge

我读到我可以使用 sed,但我不太明白如何使用它。

答案1

尝试这个非常简单的命令:

echo '"name": "_acme-challenge",' | cut -d'"' -f4

这是输出:

_acme-challenge

我使用字段分隔"符来划分字符串,并且仅使用第 4 个字段。

...就这样! :)

PS:如果您有"name": "_acme-challenge",Shell 变量,那么您可以使用以下变量:

NEW_VARIABLE=$(echo "$YOUR_VARIABLE" | cut -d'"' -f4)

答案2

如果搜索的模式可能位于任何地方,而不仅仅是分割字符串的第 4 部分,则下一个命令可用于字符串。它更独立于位置。

echo '"name": "_acme-challenge",' | grep -o '_acme[^"]challenge*'

_acme之前和之后的一切challenge都将被剥夺。

$ echo '"number": "1", "name": "_acme-challenge", "something": "else"' | grep -o '_acme[^"]challenge*'
_acme-challenge

相关内容