問題タブ [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.
c - getopt_longは認識されないオプションをどこに保存しますか?
不正なオプションに遭遇した場合getopt
、またはgetopt_long
遭遇した場合、問題のあるオプション文字をに格納しますoptopt
。違法なオプションが長いオプションである場合、どこでそのオプションが何であったかを知ることができますか?そして、何か意味のあるものがそこに保存されoptopt
ますか?
opterr = 0
自動的に出力されるエラーメッセージを抑制するように設定しました。好きな場所に印刷または記録できる独自のメッセージを作成したいのですが、認識されないオプションの名前を含めたいと思います。
perl - Getoptで引数を解析するときに未定義のオプションを許可するにはどうすればよいですか?
次のようなコマンドラインがある場合:
私のスクリプトはについて知っていて--foo
、Getoptに変数を設定してもらいたいのです$opt_foo
が、については何も知りません-WHATEVER
。Getoptに、説明したオプションを解析してから、残りの引数を文字列変数またはリストで取得するように指示するにはどうすればよいですか?
例:
次に、発行
与える
perl - Getopt :: Longメソッドの使用方法は?
入力コマンドの実行が次のような場合、Getopt::Longメソッドを使用するにはどうすればよいですか。
また
c - getopt_long引数リストを逆方向に移動することは可能ですか?
特定の引数が存在するかどうかに基づいて、次の行に沿って、いくつかの可能な引数のリストの1つに委任したいと思います。
そして、これをきちんと行うために私が考えることができる最善の方法は、main()
すべての一般的なオプションを処理し、残りを処理するために呼び出すいくつかの関数のどれを決定することです。
共通のオプションが最初にのみ発生するように、順序を制限したくないことに注意してください。
私の問題はoptind
、引数をもう一度解析する前に1にリセットするとgetopt_long
、無効な文字列をに渡してsegfaultが発生するstrncmp
ことです。したがって、optindをいじってはいけないと思います。
私はグーグルを持っていて、引数リストを飛び回ることが可能かどうかについての参照を見つけることができませんgetopt_long
(私はそれが可能であることを知っていますgetopt
)、もしそうなら、どうすればいいですか?
非標準のライブラリは使用したくない。(言語はプレーンcです。c++は使用しないでください)
ruby - Ruby GetoptLongカンマ区切りの引数を解析するにはどうすればよいですか?
Rubyでコンマで区切られた引数を解析するにはどうすればよいですか?
例えば:
$> Main.rb --xmlid 1,2,3,4,5
1,2,3,4,5 を解析して配列に格納したいと考えています。
どうやってやるの?
ありがとう。
perl - Perl で Getopt::Long を使用して読み取られたフラグを確認する方法は?
myscript.pl
すべてのフラグはオプションです。
スクリプトを次のように呼び出すと
.log
で開く前に、ファイル名にa を追加する必要がありますLine a
。そのためには、
GetOptions
何かを読み込むかどうかを知る必要があり$f1
ます。
これはどのように行うことができますか?
c - おそらくポインタの問題です。Linuxプログラム+libpcap+ getopt_long()+C言語
libpcap
ライブラリを使用して、大学のプロジェクト用のネットワークスニファを作成しています。コードの大部分は問題なく動作しますが、私は次の問題で立ち往生しています。関数を使用して5つのコマンドラインオプションを追加しましgetopt_long()
たが、1つのオプションが期待どおりに機能しません。
このオプションは、インターフェイスに関連付けられたおよび-d (--device_info)
を印刷するために使用されます。情報が印刷される対象の名前である1つの引数を取ります。I.P address
netmask
interface
プログラムのコードの必要な部分を以下に添付します。私の問題は、interface
toの名前を明示的に割り当て(35行目)、それを引数として(36行目)にchar *device
渡しても、実行すると常にブロック(4行目)が実行されることです。つまり、常に次のようになります。私はそれを引数として渡しますが。print_device_info()
print_device_info()
if
char *device
NULL
print_device_info()
私は初心者プログラマーであり、これは私が開発している最初の「実際の」プロジェクトです。ポインタの問題だと思いますが、よくわかりません。
親切にも、それを解決するためのいくつかの方法を提案します。
編集:ここでは、元のプログラムの編集バージョンを投稿しています。この編集されたバージョンはそれ自体が完全なプログラムであるため、将来のクエリには十分なはずです。
bash - bashで同時に短いオプションと長いオプションの両方をサポートするにはどうすればよいですか?
bash
スクリプトで短いオプションと長いオプションの両方をサポートしたいので、次のことができます。
出来ますか?
c - オプション入力が重複する getopt_long()/getopt()
両方の機能を知りました。それらの使用法を学ぶためにインターネットを検索しています。コマンド ライン オプションの入力を解析するために非常に重要なことが 1 つ見つかりましたが、説明されていません。
そのような場合、重複したオプションが入力された場合、両方の関数はそれを処理するために何もできません。これに使用するlib関数があるかどうか疑問に思っていました。
自分で処理する必要がある場合。私の考えでは、短いオプションを配列に収集し、配列内で同一のものを見つけることです。
それを行うより良い方法はありますか?
c - getopt_long を使用するときに構造体オプション配列に追加のダミー エントリが必要な理由
たとえば、オプション配列は次のとおりです。
パディング用ですか?