我正在尝试使用命令搜索字符串 0.49
(带点)
grep -r "0.49" *
但是发生的事情是我也得到了不需要的结果,其中包含 0449
、0949
等字符串。问题是 linux 将 dot(.) 视为任何字符并显示所有结果。但我只想得到“0.49”的结果。
最佳答案
grep
使用正则表达式; .
表示正则表达式中的“任何字符”。如果您需要文字字符串,请使用 grep -F
、fgrep
或将 .
转义为 \.
。
不要忘记将字符串用双引号括起来。否则你应该使用 \\.
所以,你的命令需要是:
grep -r "0\.49" *
或
grep -r 0\\.49 *
或
grep -Fr 0.49 *
关于linux - 使用 grep 搜索包含点的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10346816/