問題タブ [getopts]
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.
linux - getopts を使用せずにシェル スクリプトに使用内容を追加する
スクリプトの実行中にユーザーが必須情報を見逃した場合に備えて、使用コマンドを表示する必要があるスクリプトがあります。
全てについての解説付きOPTIONS
以下の変数のように、引数から値を取得しています。しかし、シェルスクリプトの検証でこの使用法が必要です。
getopts を使用してみましたが、値を渡す前にパラメーターがないため使用でき<query>
ませんでした。-q
私は他のすべての方法を見つけようとしましたが、誰もが私にとって実行可能な解決策ではない getopts を提案しました。
これについて私を助けてください..
bash - Bash: 各フラグに複数の引数
私がやりたいことは次のようなものです
また
ただし、getopts はフラグごとにゼロまたは 1 つの引数しかサポートしていないようです。
この要件を処理する良い方法はありますか? 私は現在、自分で引数を解析しています..
perl - Getopt::Std::getopts によって出力される警告メッセージを抑制するにはどうすればよいですか?
私は短いスクリプトtest.plを持っています
getopts によって生成されたメッセージを抑制Unknown option:
し、stderr で私の TRALALALALA のみを取得する必要があります。
bash - cygwin で getopts を使用するとエラーが発生する
getopts
スクリプトで onを使用しようとしcygwin
ていbash
ます。コードは次のとおりです。
上記のコードを実行すると、次のエラーが発生します。
このエラーの背後にある原因を理解できません。getopts
最初のループが機能するのにループが機能しないのはなぜですか? getopts
私のシステムがインストールされていないためですか?それを確認するにはどうすればよいですか?
bash - bash getopsが電子メールまたはIPアドレスを渡さない
私はこれについて少し頭を悩ませてきました。私が間違っていることを知りたかったのですが、おそらくこれはすべて私です。IP に ping を実行しています。IP がダウンまたはアップすると、通知が送信されます。私の問題はgetopsにあります。私はそれを使用して、電子メールアドレスとIPを解析しようとしています。これらはどちらも解析されていません。getopts を使用して 2 つの変数を解析するにはどうすればよいでしょうか。スクリプトを適切に実行できるようにする必要があります。前もって感謝します :)
bash - getopts は、オプションを前のオプションの引数として扱います
私は次のスクリプトを持っています:
-u
引数を取るオプションが必要です。スクリプトは、無効なオプションを正しく認識し-u
、引数なしで呼び出された場合を認識します。しかし、残念ながら、私が入力すると:
myscript -u -m -p
それは印刷します:
-m-1-0
したがって、引数として使用-m
し、オプション自体-u
を無視します。-m
linux - getopts (bash) を使用した複数のオプション引数
bash で getopts を使用してコマンド ライン引数を処理しようとしています。要件の 1 つは、(引用符を使用せずに) 任意の数のオプション引数を処理することです。
1 番目の例 (1 番目の引数のみを取得)
2番目の例(このように動作させたいが、引数を引用する必要はありません」
これを行う方法はありますか?
これが私が今持っているコードです:
linux - BASH getopts オプションの引数
2 つの必須引数 (arg1、arg2) と、オプションの -b フラグに加えて、ユーザーがフラグの使用を選択した場合に必要な引数を持つシェル スクリプトを作成しようとしています。
説明させてください:
これは、GIT を利用して Github リポジトリからアプリケーションをフェッチするインストール スクリプトです。ユーザーは端末に入力します f.ex.:
スクリプトは、このリポジトリから master ブランチのインスタンスをフェッチします。ただし、ユーザーがオプションの -b フラグを使用することを選択した場合、フェッチするブランチ (開発ブランチなど) を指定する必要があることを意味します。ユーザーができることを意味します:
また、ユーザーが 'new' 引数と 'app_name' 引数の前に -b flag+branch_name を入力しても問題にならないように、スクリプトを機能させる方法についても知りたいです。しかし、それはおそらく現時点で最も重要なことではありません。
私が構築しようとしているものを正確に知るために、2 つの必須引数のみを取り、マスター ブランチのみをフェッチする現在のスクリプトへのリンクを次に示します。My Super Cool Artisan Executable Script
PS: getopts を使用して多くの例を試してきましたが、ここ Stackoverflow と他のブログの両方で見つけましたが、完全に機能させるのに役立つものはありませんでした。ですから、私はここで皆さんの偉大な人々に助けを求めています。
多大な感謝と私のLinux Mint / Ubuntu - Post Install Scriptをチェックしてください。
よろしく、 ヴィリ
bash - getopts が疑問符を認識しない
現在、次のようなスクリプトでオプションを解析しています。
すべての解析オプションとフラグが機能します - これを除いて: ? )
. したがって、スクリプトを次のようなもので呼び出すと./MyScript hjrfgdskjgh
、ループを正しく通過しますが、最後の行で? )
.
orを使用し
て引用符を削除しようとしましたが、何も機能しません! 私は何を間違っていますか??":ia"
\?
. )
bash - 誰かがこの短い getopts bash スクリプトを平易な英語で説明できますか? (UNIX)
これはスクリプトです:
だから私が本当に理解している唯一の部分はシフト$(($OPTIND-1))
です。誰かが残りが実際に何をしているのか説明できますか? 上の意味file=$1
はなんですか?これは、「ファイル」という単語が$1
列の値に割り当てられたということですか?
$0
「$1 列」とは、コマンドが実行されると、コマンドの実際の名前に割り当てられ$1
、2 番目に指定されたオプション/引数であり、3 番目に指定されたオプション/引数であるという事実を指してい$2
ます。たとえば、次のように入力した場合:
その場合$0
は rm になります。-r
でしょう$1
。とdirectory/randomfiles
なります$2
。それは理にかなっていますか?
要約すると:
- 一番上にあるのはどういう
file=$1
意味ですか、それのポイントは何ですか? - は何の
$opt
略で、どういう意味ですか? - とはどういう
iopt=1
意味ですか? - スクリプトを次のように使用したい場合:
MyScriptName -r [InsertFilenameHere]
どうすればよいでしょうか?
私は非常に多くのことを尋ねていることを知っています - もし私の質問のいくつかに答えていただければ、または私に正しい方向を教えていただければ幸いです!
前もって感謝します。