grep 搜索中间有连字符的字符串

qua*_*n27 5 string grep

abc-def我正在寻找文件夹中包含该字符串的文件。

我正在使用grep -l -r abc-def *,但我不确定这是否是正确的方法(使用此命令时没有找到文件,但也许它只是意味着没有文件包含该字符串)。我也尝试过grep -l -r 'abc-def' *(找到文件,但是当我手动查找字符串时,它们不在那里,只有字符串的各个部分,即 abc 和 def)。由于该模式不是以连字符开头 -e 在这里不起作用。

grep 搜索中间带有连字符的字符串的正确方法是什么?

Mic*_*are 2

首先尝试grep -r abc-def看看哪些行匹配。grep -r abc-def *并且grep -r 'abc-def' *确实应该产生相同的结果。

fgrep(f 代表“固定字符串”)这里不需要。