[解決済み] getoptsと位置パラメータを混在させることは可能ですか?
2023-06-17 19:39:59
質問
いくつかのスクリプトのラッパーとして、シェルスクリプトを設計したい。私は、パラメータを
myshell.sh
を使って
getopts
で、残りのパラメータを同じ順序で指定されたスクリプトに渡します。
もし
myshell.sh
のように実行されます。
myshell.sh -h hostname -s test.sh -d waittime param1 param2 param3
myshell.sh param1 param2 -h hostname param3 -d waittime -s test.sh
myshell.sh param1 -h hostname -d waittime -s test.sh param2 param3
として呼び出すことができるはずです。
test.sh param1 param2 param3
のオプションパラメータを利用することは可能でしょうか?
myshell.sh
のオプション・パラメータを利用し、残りのパラメータを基礎となるスクリプトにポストすることは可能ですか?
どのように解決するのですか?
私はOPと同様のことをしたいと思い、私は必要な関連情報を見つけました。 ここで と はこちら
本来であれば、以下のようなことを行いたい場合。
script.sh [options] ARG1 ARG2
次に、このようにオプションを取得します。
while getopts "h:u:p:d:" flag; do
case "$flag" in
h) HOSTNAME=$OPTARG;;
u) USERNAME=$OPTARG;;
p) PASSWORD=$OPTARG;;
d) DATABASE=$OPTARG;;
esac
done
そして、このように位置引数を取得することができます。
ARG1=${@:$OPTIND:1}
ARG2=${@:$OPTIND+1:1}
詳細な情報および詳細は、上記のリンクから入手できます。
お役に立てれば幸いです!
関連
-
[解決済み] JVM起動時のパラメータ「-Xms」「-Xmx」とは何ですか?
-
[解決済み] HTTP POSTリクエストでは、どのようにパラメータが送信されるのですか?
-
[解決済み] Bash関数にパラメータを渡す
-
[解決済み] エクスポートあり/なしの変数の定義
-
[解決済み】bashで1つのコマンドでシェル変数にデフォルト値を割り当てる。
-
[解決済み】bashでgetoptsを使用する方法の例
-
[解決済み】位置指定パラメータを使用したGitエイリアス
-
[解決済み] homebrew パッケージがインストールされているかどうかを検出する
-
[解決済み] sed を使ってファイルの名前を大量に変更する
-
[解決済み] SSH接続をチェックするbashスクリプトを作成するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】bashでgetoptsを使用する方法の例
-
[解決済み] 文字列が有効な整数であるかどうかをテストする
-
[解決済み] このbashのフォーク爆弾はどのように機能するのでしょうか?重複
-
[解決済み] BASHでAWS S3 CLIを使用して標準出力にファイルをダンプするには?
-
[解決済み] .bashrcのエイリアスをvimのシェルコマンドで使用できるようにするには?(:!...)
-
[解決済み] ディレクトリ内のファイルに対して、ファイル名のみ(パスなし)をエコーします。
-
[解決済み] bashでsshがwhileループから抜け出す [重複] [重複
-
[解決済み] zip アーカイブの中の1つのファイルを更新する方法
-
[解決済み] Bashを使用してJARからMANIFEST.MFファイルを読み込む方法
-
[解決済み] DockerfileでDockerコンテナにBashのエイリアスを設定するにはどうしたらいいですか?