Mac OS X 終端機中的 Grep—僅顯示一種顏色

Mac OS X 終端機中的 Grep—僅顯示一種顏色

我習慣於grep為文件名、行號和匹配本身著色。這三個應該是不同的顏色。這在 Linux 終端甚至 Windows 上的 MinGW 上都能完美運行,但在 OS X 上,即使我設定了,也只能GREP_COLOR在匹配的結果上獲得顏色。

grep作業系統自備的版本是否太舊?

10.7.3 在 MBA 13" 上使用 Terminal.app。

答案1

正如 Ignacio 已經說過的,OS X grep 有點過時了(它的版本是 2.5.1)。不過,您可以安裝最新的 GNU grep。

像往常一樣,您可以透過以下方式在 OS X 上安裝大多數缺少的 Linux 工具:自製:

brew install grep

這將安裝ggrep,以免覆蓋您現有的grep.如果您想更改它,請參閱資訊訊息:

所有指令均以前綴“g”安裝。如果您需要使用這些指令及其正常名稱,您可以從 bashrc 新增一個「gnubin」目錄到您的 PATH,如下所示:

PATH="$(brew --prefix)/opt/grep/libexec/gnubin:$PATH"

此外,您可以啟用顏色選項並預設排除某些目錄,這可能會使其更有用:

alias grep="ggrep --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn,.idea,.tox}"

將其新增至您~/.bash_profile或您正在使用的任何 shell 配置中。

答案2

正確的。 GNU grep 2.5.3 首次支援多種顏色。

相關內容