
Bashスクリプトを書きますか?getoptは落胆し、 getopts長いオプションをサポートしていません。タスクを実行するための広く受け入れられているBashモジュールはありません。すべてのプラットフォーム(Linux、OSX、MSW)で動作しないソリューションの一部は... Argbash試してみて、それらの厄介な議論に恐怖に陥るのをやめてください! Argbashを使用すると、次のようになります。
bash持つすべてのプラットフォームで使用できます。Argbash使用して、スクリプトの解析部分を簡単に再生できます)。Argbash -Awareのものでそれらを包むことにより、低レベルのArgbashアウェアするスクリプトを再利用する能力。cd resources && make installだけです(システム全体のインストールのためにsudo make install PREFIX=/usr実行することができます)。既存のスクリプトを数分でArgbashを搭載します。さまざまなArgbashフレーバーを探索してください:
| 風味 | ターゲットグループ |
|---|---|
| Argbashオンライン | Argbashをインストールせずに試してみたい場合は、インターネットに恒久的にアクセスできる場合は使用してください。 |
| Argbash Cli | argbash常にローカルに準備するようにパッケージをインストールします。 |
| Argbash Docker | Argbash Cliにほとんど似ていますが、インストールする必要はありません。画像をダウンロードするだけです。 |
Argbashは解析ライブラリではありませんが、むしろスクリプト用にテーラーメイドを生成するコードジェネレーターです。スクリプトが取るべき引数を説明することができ、その後、 bash解析コードを生成できます。デフォルトではスクリプトにとどまりますが、別のファイルに生成して、 Argbashスクリプトに含めるようにすることができます。いずれにせよ、スクリプトを実行するためにArgbash必要ありません。
Argbashは非常に簡単に使用でき、生成されたコードは比較的読むのが比較的優れています。さらに、引数の定義はスクリプトに組み込まれたままであるため、解析ロジックを更新する必要がある場合は、既に生成されたスクリプトでargbashスクリプトを再実行するだけです。
したがって、スクリプトにコメントをいくつか書いて、Argbashのbin/argbashを実行することで、引数の解析でbashスクリプトを取得できます。結果については、Simple Example Sourceテンプレートと簡単な例スクリプトを参照してください。長く読んでいない場合は、 bin/argbash-initにテンプレートを生成してください。
次の引数タイプがサポートされています:
--verboseなど)オプションの引数と--version 、 --helpなど)。次の出力が利用可能です。
getopts使用するPosixスクリプトもテーラーメイドです。このユーティリティは、Pythonのargparse and the shflagsプロジェクトに触発されています。
詳細については、Docs(最新の安定バージョン)をお読みください
bash (おそらくbash >= 3.0 )(ユーザーの唯一の要件 - すなわち、スクリプトを実行し、作成しない人)autom4teユーティリティ( autoconf >= 2.63スイートの一部)sed 、 grep 、 cat 、 test 。