使用 grep 查找包含字符串但不以另一个字符串开头的行

Ton*_*y H 1 regex grep

我正在 PHP .ini 设置文件中查找会话配置标志。

我使用这个命令来找到它们:

 grep -i "session" php.ini
Run Code Online (Sandbox Code Playgroud)

但它返回注释并注释掉以分号“;”开头的参数。

如何更改我的命令,以便我仍然得到带有“session”的行,但不是以分号开头的行?

dta*_*ers 5

grep -i "session" php.ini | grep -vx ';.*'
Run Code Online (Sandbox Code Playgroud)

应该管用

-v 是“反向匹配”,因此只显示不匹配的行

-x 是整行匹配

  • 您也可以使用“grep -v '^;'”将“;”锚定在行的开头,然后就不需要“-x”选项。 (2认同)