gpt4 book ai didi

unix - Grep OR 操作符不工作

转载 作者:行者123 更新时间:2023-12-04 14:03:18 26 4
gpt4 key购买 nike

我需要 Unix 方面的帮助。
我正在尝试查看两个语句(printf 和 fprintf)中的一个是否在文件中。我使用了命令:

search=`cat $file | grep -w "fprintf\|printf"`

出于某种原因,它在存在这两者之一的文件中找不到任何一个。为什么?

最佳答案

你有两个问题。

一、standard grep 不支持 |运算符(operator)。您需要使用 egrep-E旗帜。

二、内双引号,\|意味着 \| .反斜杠被传递到 grep命令,所以即使 grep了解|运算符,反斜杠会将其转换为普通字符。

尝试这个:

search=`cat $file | egrep -w "fprintf|printf"`

或者您可以将每个选项作为单独的参数提供给 grep :
search=`cat $file | grep -w -e fprintf -e printf

关于unix - Grep OR 操作符不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12739090/

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