の GNU 実装を使用して書かれたと思われる sh スクリプトを のsedBSD 実装に移植していsedます。元のコメントを含むスクリプト内の正確な行は次のとおりです。
# escape dot in file extension to grep it
ext="$(echo $ext | sed 's/\./\\./' -)"
次の結果を再現できます(明らかに、すべての可能性のある値を使い果たしているわけではありませんext):
ext=.h; ext="$(echo $ext | sed 's/\./\\./' -)"; echo [$ext]
GNU の実装を使用するとsed、以下が返されます。
[\.h]
以下の BSD の実装を使用するとsed、以下が返されます。
sed: -: No such file or directory
[]
の両方の実装に対してext=.h; ext="$(echo $ext | sed 's/\./\\./')"; echo [$ext]リターンを実行します。[\.h]sed
GNU と BSD の両方sedのマニュアル ページを調べましたが、末尾の「-」については何も見つかりませんでした。「-」でグーグル検索しsedてもあまり実りがありません。
「-」はタイプミスですか?の予期しない値に必要な「-」はあり$extますか? 問題はsedではなく にありshますか?
誰かが私が見るべきものに私を導くことができますか、それとも「-」の目的が何であるかを説明することはできますか?