我正在尝试0.49使用以下命令搜索字符串(带点)
0.49
grep -r "0.49" *
但是,什么情况是,我也越来越其中包含字符串不想要的结果,例如0449,0949等等,。问题是linux将dot(。)视为任何字符并得出所有结果。但是我只想得到“ 0.49”的结果。
0449
0949
grep使用正则表达式;.在正则表达式中表示“任何字符”。如果你想有一个文本字符串,使用grep -F,fgrep或逃避.到\.。
grep
.
grep -F
fgrep
\.
不要忘记将字符串用双引号引起来。否则你应该使用\\.
\\.
因此,您的命令将需要是:
grep -r "0\.49" *
要么
grep -r 0\\.49 *
grep -Fr 0.49 *