
我習慣於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 首次支援多種顏色。