将特定单词与grep -e匹配

时间:2014-05-01 18:28:59

标签: grep expression

我正在尝试使用grep只打印以特定模式开头的行。这是一个例子

$SERVER_IP = 2.2.2.2
$SERVER_IP_PORT = 1111
$SERVER_IP_XXX = blablabla

我希望grep只打印SERVER_IP = 2.2.2.2而不打印其他三行。

我尝试了下面的命令,但它无法正常工作

grep -e "^\s*\$SERVER_IP$"

如果我尝试:

grep -e "^\s*\$SERVER_IP"

grep将打印所有三行

如何使用grep -e或egrep完成此操作?谢谢

3 个答案:

答案 0 :(得分:1)

grep -e "^\s*\$SERVER_IP\>"

\>表示“单词边界”,或“单词字符符合非单词字符的地方。”

答案 1 :(得分:0)

使用grep -e' ^ \ $ SERVER_IP ='匹配任何以$ SERVER_IP =

开头的行

答案 2 :(得分:0)

如果你有awk,你可以这样做:

awk '$1=="$SERVER_IP"' file
$SERVER_IP = 2.2.2.2

==仅在字段1准确$SERVER_IP时才匹配