2013-04-28 53 views
1

我試圖在某個目錄下的所有文件中找到字符串「5.1」的所有出現。 我使用下面的命令嘗試,但它仍然沒有找到:如何使用grep和regex查找雙引號字符串?

#grep -Re[5]+\.+[1] . 

我在做什麼錯?

+0

一方面必須有'之間的空間-Re'和模式。然後應該引用你的模式,以保持shell不會碰到'[]'字符範圍。 – Jens 2013-04-28 21:00:15

回答

1

你的表情對我沒有意義。好像你正在尋找:

grep -R '5\.1' . 

或者,如果你要包括"字符:

grep -R '"5\.1"' . 

但我沒有看到有關這些在你的原職事情,所以它的很難說。

0

尋找一個固定的字符串遞歸將

grep -fR '"5.1"' . 

(如果你真的意味着包括雙引號)。

請注意,-R選項不是POSIX,因此可能無法使用。在這種情況下,便攜的解決方案是

find . -type f | xargs grep -f '"5.1"' 
3

你並不需要,電子正則表達式,那麼fgrep一樣簡單構造,並執行快捷

fgrep -R '"5.1"' . 
相關問題