問題タブ [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.

0 投票する
2 に答える
350 参照

debugging - デバッグ出力 (BASH) の冗長性をパラメータ化する方法は?

スクリプトを作成する過程で、コマンドの出力をさまざまな方法で、さまざまな程度で使用します。これは、目の前のタスクのトラブルシューティングを行うためです..たとえば、このスニペットでは、アプリケーションのアイコン リソースを読み取り、典型的な .icns 拡張子ではありません...

必然的に、各バグが潰され、stdout実際の機能とデバッグ プロセスに関連する開始点が増えるにつれて、このフィードバックは通常、コメント アウトされるか、沈黙するか、または削除されます。これには明らかな理由があります。

ただし、実行時に「この種の」メッセージの一部またはすべてをオプションで表示するか、またはオプションで表示しないように、ハードコードされているか、パラメーターとして渡された単純なオプションを提供したい場合、その単純な機能を提供する最良の方法は何ですか? 基本的に機能を複製しようとしてset -xいますが、行ごとのランダウンの代わりに、具体的に設計した通知のみを出力します。

echoeach and everyをifa をチェックするに置き換えるのは過剰に思えますが、 /スキームを実装するdebug=1|0方法の簡潔な説明を見つけることができませんでした(どちらが組み込みであるかを思い出せません) など。独自のスクリプト。この小さな式は有望に思えましたが、re: に関するドキュメントはほとんどありません(ただし、これがこのパズルの鍵であると確信しています)。getoptsgetopt2>$1

この取引に対する簡潔で再利用可能なトリックは歓迎されます。ボートを完全に見逃している場合、またはそれがヘビであり、噛まれていた場合は、お詫び申し上げます.

0 投票する
1 に答える
376 参照

command-line-arguments - Smalltalkの文書化されていないgetopt

パスワードを暗号化し、パスワードハッシュを復号化するコマンドラインアプリを作成しています。Getoptのドキュメントには例が記載されていないため、Getoptクラスの使用方法がわかりません。いくつかの手がかりがメーリングリストのログに散らばっています。

with: pattern特に、の形式、 CLI引数を指定する文字列、値が必須か、オプションか、省略かはわかりません。

ios7crypt.st:

実行例:

以前は、-eとの両方monkeyがスクリプトに渡されましたが、Getoptはdo:サイレントにドロップ-eしたため、出力は次のようになりました。

0 投票する
3 に答える
5605 参照

python - getopt python でパラメータを処理できない

私の Python スクリプトにオプションを提供するために、いくつかのパラメーターを導入したいと思います。Pythonでこれを行うより良い方法はgetoptを使用することですが、スクリプトを実行すると何もしません。私を助けてください!!!。これは私のコードです:

0 投票する
2 に答える
1540 参照

perl - argv の使用を getopts の使用に変換する perl スクリプトのヘルプ

Getopt::Stdperl スクリプトで @ARGV の使用を代わりに使用して変換しようとしています。substr エラーが発生しており、これを理解するための助けが必要です。

エラー:

これが私のコードです。(コメントアウトされたコードは、@ARGV を使用した作業コードでした)

0 投票する
1 に答える
654 参照

c - C での引数の前後のコマンド ライン オプションの処理

getopt_longこれまでのところ、コマンド ライン C プログラムのオプションを解析するために使用してきました。

getopt_long非オプションの引数にヒットしたときに解析を停止する方法はありますか? そうでない場合、C でこれを処理する最善の方法は何ですか?

例を挙げると、コマンドをgitと同様の方法で処理し、コマンドの前に一般的な引数を置き、その後にコマンド固有の引数を置きたいと思います。

例えば:

-pおよび--bareは一般的なオプションであり、すべてのコマンドで使用できますが、-aはコマンドに固有であり、commitコマンドに-s固有statusです。

Usinggetopt_longは、最初にすべてのオプションを解析しようとし、次にオプション以外の引数を処理するために残します。非オプション (つまり、コマンド) をヒットしたら解析を停止し、残りの引数をコマンド固有のオプション パーサーに渡すのが理想的です。

0 投票する
1 に答える
144 参照

multiline - Factorには複数行のシバンがありますか?

CommonLispには複数行のシバンがあります。

これにより、シバン内でより複雑な操作が可能になります。CLISPは、ARGVからスクリプト名を省略した数少ない言語の1つです。ここでは、LispスクリプトがARGVを介してスクリプト名にアクセスできるように、スクリプト名がCLISPに2回強制的に送信されます。

以下が機能するようにFactorでこれを行う方法はありますか?

上記の行は出力されるはずですが、Factorはスクリプト名の後にあるため、t無視します。-help

これ-helpは、スクリプト名の前に送信されたために機能します。シェバンがに拡大するため、./ios7crypt.factor -help静かにドロップします。残念ながら、Factorはスクリプト名の前にすべてのコマンドラインオプションを必要としているようです。-helpfactor ios7crypt.factor -help

この動作をオーバーライドする複数行のシバンはありますか?

0 投票する
2 に答える
3912 参照

c++ - getopt/long_getopt の正しい使い方

このトピックが打ちのめされたことは知っていますが、探しているものが見つかりませんでした。C++ でコマンド ライン引数を解析する必要があります。

Boost と long_getopt を使用できません

問題はキャストにあります。単に引数を出力すると、ループで期待どおりに機能しますが、変数に割り当てられた値が何らかの形で機能しません。

コンパイル可能な完全なプログラムを次に示します。

コメントで述べたように、問題は型キャストにあると思いますが、適切に行うにはどうすればよいですか? 他に良い方法があれば教えてください。

--- ./program-name -d .8 -i 100 としてプログラムを実行できます

ご協力ありがとうございました。私は Unix と C++ を初めて使用しますが、それを学ぼうと一生懸命努力しています :)

0 投票する
1 に答える
20776 参照

python - 使用関数は getopt では機能しません

Python の使用関数に問題があります。これは私の主な機能の一部です:

使用関数も定義します

しかし、コードを./code.pyor ./code.py -h(実行可能) として実行すると、Python のヘルプしか表示されません。

0 投票する
6 に答える
16592 参照

bash - getopt の無効なオプションのトラップ

getopt(not ) を使用getopsして、bash スクリプトがオプションとスイッチ (長い --option と短い -o 形式の両方) を処理できるようにしています。

無効なオプションをトラップして処理できるようにしたいと考えています。通常、ユーザーが試しcmd --helpてからスクリプトを終了する必要があることをエコーアウトします。

問題は、無効なオプションが getopt によってキャッチされ、それ自体が「getopt: 無効なオプション -- 'x'」などのメッセージを出力しているということです。

getopt パラメータを設定するために使用しているパターンは次のとおりです。

ここで、$LONG_OPTIONS と $SHORT_OPTIONS は両方とも、オプションのコンマ区切りリストです。

オプションの処理方法は次のとおりです。

getopt -qcase出力を抑制しますが、ステートメント内のトラップスキームはまだ期待どおりに機能しません。代わりに、無効な引数にもかかわらず、プログラムは実行されます。

0 投票する
2 に答える
411 参照

c - 戻り値として -1 を返す getopt

getopts がどのように機能するかを確認しようとしています。以下のコードを書きましたが、何が間違っているのかわかりません。私を指摘してください:

私の getopt の理解のいくつかの側面を見逃しているか、本当に間違いを犯している可能性があります。

変更を加えましたが、それでも同じ結果が得られます:(

ありがとう、ファイザン