私は最近、この単純なsed
式がLinuxまたはCygwinで正常に機能するが、Macでは「未定義のラベル」エラーで失敗することを発見しました。
$ sed '/SUCCESSFUL/d ; /\[java\]/!b label; s/\s\+\[java\]//; /^\s*$$/d; /Compiling/!d; :label /^\s*$$/d; s/^/monitor: /'
sed: 1: "/SUCCESSFUL/d ; /\[java ...": undefined label 'label; s/\s\+\[java\]//; /^\s*$$/d; /Compiling/!d; :label /^\s*$$/d; s/^/monitor: /'
sed
MacOSでは、GNUの対応物とは異なるオプションを備えたBSDバリアントです。ただしman sed
、MacOSバージョンのサポートラベルを明確に示しているsed
ので、なぜこのエラーが発生するのか、そして最も重要な解決方法は何でしょうか。