問題タブ [getopt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unix - Unix では、getops に期待する値の範囲を与えることは可能ですか?
タイトルがわかりずらくて申し訳ありませんが、言いたいことは次のとおりです。
複数のパラメーターを受け入れることができるスクリプトがある場合、渡されたパラメーターに基づいてスクリプト アクションをより簡単に制御するために、getops コマンドを使用します。ただし、これらのパラメーターの 1 つを 5 ~ 9 の任意の数値にすることができます。スクリプトにコマンドとして渡された 5 から 9 までの任意の数字を単一のユーザー コマンドとして取得する必要があることを getops に伝える方法はありますか?
これまでの私のコードは次のようなものです:
次のようなことができるかどうかを確認したい:
c++ - C++およびコマンドラインオプション
C++プログラムでGNUgetoptを使用するのは悪い形式ですか?C ++固有の代替手段はありますか、それともgetoptを使用する必要がありますか?
python - getopt/optparse を使用して 1 つのオプションに対して複数の値を処理しますか?
以下の例に示すように、getopt または optparse を使用して、1 つのオプションに対して複数の値を取得することは可能ですか?
各オプション (-c、-b) の実際の値の数は、1 または 100 のいずれかになる可能性があることに注意してください。
./hello_world -c "arg1 arg2 arg3" -b "arg4 arg5 arg6 arg7"
これは不可能かもしれない (そしておそらく POSIX に違反している) ように思えますが、間違っている場合は訂正してください。
行末のすべての非オプション ( ./hello_world -c arg1 -b arg1 arg2 arg3
) を収集できる例を見てきましたが、複数のオプションの最初の場合は収集できません。
Python のバージョンが異なるさまざまなプラットフォームでアプリを動作させたいので、argparser は調べていません。
perl - PerlでGetoptを使用しているときに引数をグループ化する方法は?
私が書いている perl スクリプトには、たくさん (~50) のコマンド ライン オプションが用意されている場合があります。それらのほとんどはオプションであるため、呼び出しには提供されるオプションの一部のみが含まれます。
使用していますが、複数回Getopt::Long
使用することはできません。GetOptions
その結果、1 回のGetOptions
呼び出しですべてのコマンド ライン オプションを使用する必要があります。
使用中にオプションをグループ化する良い方法はありますGetOptions
か?
bash - bashで同時に短いオプションと長いオプションの両方をサポートするにはどうすればよいですか?
bash
スクリプトで短いオプションと長いオプションの両方をサポートしたいので、次のことができます。
出来ますか?
c - Cのswitchステートメントとgetopt()関数
switch
とを使用してコマンドラインの引数を解析しようとしていますgetopt()
。構造は非常に簡単です。私には、、、makefile
および.c
ファイルがあり.h
ます。スイッチを使うのは初めてなので、基本的なミスをしているのかもしれません。このリンクをガイドとして使用して、リンクテキスト
と
リンクテキストを切り替え
ました。基本的な間違いを見つけた場合は、お知らせください。
makefile:
/////////////////////////////////////
lunar.c
///////////////////////////////////
lunar.h
c - Cのデフォルト値と範囲制約を使用したコマンドオプションの解析
C でコマンド ライン引数を解析する必要があります。引数は基本的に int または float で、デフォルト値と範囲制約があります。
次のようなものを実装し始めました。
たとえば、次のように呼び出します。
ただし、車輪の再発明はしたくありません。
私の目的は、範囲制約のエラーチェックを行い、オプションがオプションではなく設定されていない場合にエラーをスローすることです。そして通常、usage() 関数によって与えられるヘルプ メッセージを生成します。
使用法テキストは次のようになります。
私は getopt から始めましたが、やりたいことがあまりにも限られているため、このような単純なユースケースではまだコードを書きすぎる必要があると感じています。
どのような代替手段をお勧めしますか?
perl - bashのWhile/Caseステートメントをperlに変換する方法
これがbashのループです:
引数がコマンドラインの値を入力するように、これをperlで変換するにはどうすればよいですか?
-------質問に追加:
これは確かに役立ちます、そして私は本当に感謝しています、getOptionsの外でこれらのパラメータにアクセスする方法はありますか?これがbashスクリプトの残りの部分です:
p>c - コマンドライン引数として整数を取る方法は?
私はgetopt() の例cvalue
を読みましたが、例のコードのように、整数を引数オプションとして受け入れる方法を示していません:
上記を のように実行した場合はtestop -c foo
になりcvalue
ますfoo
が、必要な場合はどうなりtestop -c 42
ますか? cvalue
は のタイプなので、 bechar *
にキャストできますか? 私はこれを直接使用してアクセスせずに整数としてキャストしようとしましたが、で印刷すると常に大きな負の数になります。私は正しく逆参照していないと思いますか、わかりません...optarg
(int)
getopt()
argv[whatever]
%d
argv[]
perl - Perl: GetOpt を使用しているときに、二重ダッシュ (--) の後にオプションの認識が停止するのを防ぐことは可能ですか?
二重ダッシュ (--) で終わる値リストを受け取り、オプションを指定する perl スクリプトに書き留めたいと思います。例:
このコマンド ラインを実行すると、2 つの配列が作成されます。言葉 = [彼は私たち];
GetOption の使用はこれをサポートしません。bc を使用した後、ダブル ダッシュを使用すると、オプションの認識が停止します。