現在、次の要件を持つBashスクリプトを作成しています。
- さまざまなUnix / Linuxプラットフォームで実行する必要があります
- 短いオプションと(GNU)長いオプションの両方をサポートする必要があります
私はそれgetopts
が移植性の観点から好ましい方法になることを知っていますが、知る限りでは長いオプションをサポートしていません。
getopt
長いオプションをサポートしますが、BashGuideはそれに対して強く推奨します:
getopt(1)を使用しないでください。getoptは、空の引数文字列、または空白が埋め込まれた引数を処理できません。それが存在したことを忘れてください。
そのため、手動解析のオプションがまだあります。これはエラーが発生しやすく、かなりの定型コードを生成するため、自分でエラーを処理する必要がありgetopt(s)
ます(自分でエラー処理を行うと思います)。
それで、この場合の好ましい選択は何でしょうか?