2012-10-15 119 views
0
askljasklj. 
twuikso lsliosus. 
sakjsiua .sfdds* askhkjash. 

在這裏我想grep行包含.*模式。 使用命令cat file | grep ".\*"給出輸出sakjsiua .sfdds* askhkjash,但這不應該輸出或我正在使用錯誤的命令grep命令查找通配符

任何人都可以在這裏幫助嗎?

回答

2

我假設你有一個文件foo中的單詞。因此給出一個命令:

cat foo | grep ".*"  

會打印一切。如果你只是想。* pattern然後使用下面的命令:

cat foo | grep "\.\*" 

通過把\我們可以做出。和*表現爲一個普通的文本字符

+0

不需要'cat' – squiguy

+0

它的工作,但爲什麼有兩個\\ –

+0

@PrinceGarg:這兩個'。 '和'*'是[元字符](http://en.wikipedia.org/wiki/Metacharacter)。您需要將它們轉義出來,以便'grep'能夠以普通文本字符的形式讀取它們。 HTH。 – Steve

1

你應該逃避他們兩個如下:

grep "\.\*" yourfile