clear-code/zsh.d

OSX Mountain LionにてgrepのWarningが出る

yuyunko opened this issue · 2 comments

usage: grep [-abcDEFGHhIiJLlmnOoPqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
        [-e pattern] [-f file] [--binary-files=value] [--color=when]
        [--context[=num]] [--directories=action] [--label] [--line-buffered]
        [--null] [pattern] [file ...]
usage: grep [-abcDEFGHhIiJLlmnOoPqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
        [-e pattern] [-f file] [--binary-files=value] [--color=when]
        [--context[=num]] [--directories=action] [--label] [--line-buffered]
        [--null] [pattern] [file ...]

grep に-qオプションが存在しないことによるWarningっぽいです。
(zsh.d/zshenvの156Lと163L)

それから、138Lにて、

grep_version="$(grep --version | head -n 1 | sed -e 's/^[^0-9.]*\([0-9.]*\)$/\1/')"

とあるが、Mountain Lionでは

$ grep --version
grep (BSD grep) 2.5.1-FreeBSD

と表示されるため、

grep_version="$(grep --version | head -n 1 | sed -e 's/^[^0-9.]*\([0-9.]*\).*$/\1/')"

じゃないといけない気がする・・・。

kou commented

おぉ、Mountain LionではBSD grepになったのですか。

helpがでるのは grep --help の出力がstdoutじゃなくてstderrに出ちゃっているからだと思うので、stdoutにリダイレクトするようにしました。

バージョンの検出は教えてもらったのと同じような方法を使いました。

ありがとうございました!

なんかいろいろと勘違いしていてすいません。でも修正してくださってありがとうございました!