gpt4 book ai didi

linux - 转义grep中的感叹号?

转载 作者:IT王子 更新时间:2023-10-29 00:50:08 27 4
gpt4 key购买 nike

我有这个完整的行(下面 awk 中的 rpm 命令)我想从某些文件中 grep 出来,包括引号。当我尝试 grep 和 grep -F 时,我似乎无法获得正确的输出。我尝试从 grep 语句中删除行尾的一部分,它看起来像“!”导致问题。我尝试用单引号将字符串括起来,但也没有运气。谢谢你。

rpm -qVa | awk '$2!="c" {print $0}'

最佳答案

您有几个选择。

  1. 使用单引号 - 当您需要文字单引号时,只需去掉单引号,添加一个带反斜杠的引号,然后返回:

    grep 'rpm -qVa | awk '\''$2!="c"{print $0}'\' 文件名

  2. 使用 POSIX 字符串:

    grep $'rpm -qVA | awk\'$2!="c"{print $0}\'' 文件名

  3. 使用不太具体的模式:

    grep 'rpm -qvA | awk.$2.="c"{print $0}.'文件名

    或者,如果您检查了 $2=="c" 以及 $2!="c",您可以这样做:

    grep 'rpm -qvA | awk .$2[^=]="c"{print $0}.'文件名

我会选择 POSIX 字符串,或者可能是普通的单引号选项 - 它具有在其他 shell 中工作的值得商榷的优势,例如 dash

关于linux - 转义grep中的感叹号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13461828/

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