問題タブ [getopt-long]
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.
php - Getopt::Long を使用して Linux でシステム コマンドを実行する
次の perl ドライバーを使用して、引数を指定して php スクリプトを実行しようとしています。
しかし、何かが間違っているようです:
ls システム コマンドは正常に実行されますが、引数を指定した php コマンドは実行されないためです。
この perl スクリプトのコマンド ライン引数は次のとおりです。
-a 10 -h ktest.test.net -t 5 -un admin -pw adminpassword -p "acViewer/index.html?StartDate=20090926040000&EndDate=20111220235959"
c - Cでのgetopt_long()の必須オプション
C / C ++では、getopt_long()
コマンドライン引数の解析に使用できます。一部のオプションが必須であることを関数に伝えることはできますか?たとえば、以下のポートについて言及せずにが呼び出されたgetopt_long
場合、解析でエラーが発生することをどのように判断できますか?startServer
./startServer -port 80
注:私はオプション引数を必須としてではなく、オプション自体について話しているのです。
java - java gnu getopt-大文字と小文字を区別しないようにする方法は?
私はJava用のgnuのgetoptライブラリを使用しています。大文字と小文字を区別しないように長い選択を行うにはどうすればよいですか?つまり、私は--switch
のように扱われたいです--Switch
。デフォルトの動作では大文字と小文字が区別されるようで、別の方法で定義する場所を見つけることができませんでした。
ありがとう
linux - getopt_long (optarg.h) で省略形をオフにしますか?
で略語をオフにすることはできgetopt_long()
ますか? マニュアルページから:
省略形が一意であるか、定義済みのオプションと完全に一致する場合は、長いオプション名を省略できます。
私が受け取ったコードの仕様では、フラグの完全な完全一致が必要であり、多くのフラグがあるため、これを行いたいと考えています。
perl - オプションのサブで Getopt::Long オプションの値にアクセスするにはどうすればよいですか?
私の目標は、--override=f
他の 2 つのオプションの値を操作するオプションを持つことです。コツは、GetOptions がコマンド ラインでオプションの存在を検出したときに実行されるで、オプションの値 (指定子の に一致する部分)f
を参照する方法を考え出すことです。=f
sub
これが私がやっている方法です:
コードは、私が望むようにオプションとオーバーライドを処理するようです。sub
内に、$_[0]
オプションの名前(コマンドラインで省略されている場合でも完全な名前)が含まれ、値が含まれていることを発見しました$_[1]
。魔法。
これが文書化されているのを見たことがないので、この手法を使用して無意識のうちに間違いを犯していないか心配です.
ruby - Rubyでgetoptlongクラスを使用するには?
Ruby で getoptlong クラスを使用するのに助けが必要です。コマンド prog_name.ruby -u -i -s filename を実行する必要があります。これまでのところ、prog_name.ruby -u filename -i filename -s filename でしか実行できません。
これは私の getoptlong コードです:
ruby - Ruby GetoptLongはARGVを変更しますか?
RubyのGetoptLongのドキュメントは、解析されたオプションをARGVから削除するという印象を私に与えました。問題の箇所は次のとおりです。
たとえば、-aが引数を必要とせず、-bがオプションで引数を取る場合、'-a one -b two three'を解析すると、('-a'、'')および('-b'、'two ')オプション/引数のペアとして処理され、' one'、'three'がARGVに残されます。
ただし、そうではないようです。これが私のプログラムです:
そしてここに出力があります:
(私はルビー1.9.2を使用していることを確認しました。)
オプションを手動で削除することもできますが、オプションを渡す方法に応じて、それぞれが配列内の1つまたは2つのスロットを占有する可能性があるため(--base=foo
vs. --base foo
)、これは少し頭痛の種になります。GetoptLongが私のためにそれらを削除できれば、はるかに便利です。これを行う方法はありますか?
posix - POSIX には getopt.h が含まれているはずですか?
これによると、POSIX ライブラリには含まれていませんgetopt.h
。しかし、私はこれを見つけましたunistd.h
:
これは、getopt.h
を含めると暗黙的に含まれるということunistd.h
ですか? つまり、上記のコードは unistd ヘッダー ファイルのすべての実装に期待できるものですか、それとも私の特定のバージョンにあるものですか? また、__USE_POSIX2
マクロは POSIX.2 以降で定義されていますか、それとも POSIX.2 専用ですか?
perl - Perl で Getopts を複数回呼び出すことはできますか?
私は perl の初心者なので、この質問に辛抱強く対応してください。
perl Getopts::Long::GetOpts メソッドを複数回呼び出すと、2 回目の呼び出しは完全に無視されるようです。
これは正常ですか??(なぜ)
このプロセスの代替手段は何ですか??
(実際には、GetOpts 呼び出しを行うモジュールを作成しました。モジュールを使用するスクリプトもそれを実行しようとしますが、スクリプトは必要なオプションを取得していないようです)
ありがとう、ニーラジ