gpt4 book ai didi

bash - grep 正则表达式中的 shell 变量

转载 作者:行者123 更新时间:2023-11-29 08:41:50 36 4
gpt4 key购买 nike

我正在尝试在 grep 正则表达式中使用变量。我将只发布一个失败示例,也许有人可以建议如何在运行 grep 命令时评估变量。我也试过 ${var}

$ string="test this"
$ var="test"
$ echo $string | grep '^$var'
$

因为我的正则表达式应该匹配以“test”开头的行,它应该打印通过它回显的行。

$ echo $string
test this
$

最佳答案

您需要使用双引号。单引号防止 shell 变量被 shell 插入。您使用单引号来防止 shell 进行插值,如果您的正则表达式使用 $ 作为模式的一部分,您可能不得不这样做。如果您使用双引号,您还可以使用反斜杠来引用 $

此外,您可能需要将变量放在花括号 ${var} 中,以帮助将其与模式的其余部分分开。

例子:

$ string="test this"
$ var="test"
$ echo $string | grep "^${var}"

关于bash - grep 正则表达式中的 shell 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18147884/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com