Qbilinux 日記

Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

Mac の sed って GNU の sed とは違うのか...

手元の作業を,スクリプトいじるだけなら Linux 上じゃなくて Mac でやっても同じかかなと思って,作業していたんだけど思いっきりはまってしまいましたね.

スクリプト処理に sed を使っていたんだけど,挙動が違うのにしばらく気が付きませんでした.調べてみたら Linux だと

$ sed --version
sed (GNU sed) 4.2.2
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jay Fenlason, Tom Lord, Ken Pizzini,
and Paolo Bonzini.
GNU sed home page: <http://www.gnu.org/software/sed/>.
General help using GNU software: <http://www.gnu.org/gethelp/>.
E-mail bug reports to: <bug-sed@gnu.org>.
Be sure to include the word ``sed'' somewhere in the ``Subject:'' field.

とかだけど,Mac の場合には

$ sed --version
sed: illegal option -- -
usage: sed script [-Ealn] [-i extension] [file ...]
sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]

なのね.

うーむ.どうしてこんなとこが違うのかなぁと思ったら BSD 経由でそうなってるのね.

ちょっと思わぬところではまってしまいました.....