実行中にユーザーから入力を受け取ることで、対話型スクリプトを作成できます。また、要件に従って出力を操作するのにも役立ちます。ユーザーから入力を受け取る簡単な方法がいくつかあります。そのため、中級者または専門家としてより高度な方法を使用するのが最善です.ただし、多くの bash ユーザーは、bash スクリプトでユーザーからの入力を取得するための高度なテクニックを習得する必要があります。したがって、このチュートリアルでは、それらすべてを簡単に説明します。
Bash スクリプトでユーザーから入力を取得する方法 [高度なテクニック]
readコマンドを使えば入力を取れるのですが、複数入力できることをご存知でしょうか?詳細な情報を得るために、例を挙げてみましょう。複数の (A、B、C、D、E) 数値を使用して算術計算を実行するスクリプトを作成するとします。
#!/ビン/バッシュ
エコー 「数字を3つ入力してください」
読んだ A B C D E
和 =$ ( ( A+B+C+D+E ) )
エコー 「追加は $合計 '
かける =$ ( ( あ * B * ハ * D * と ) )
エコー 「掛け算は $乗算 '
これで、スクリプトを実行し、数値を入力して加算と乗算を計算できます。
個別の echo ステートメントを作成したくない場合は、 -p オプションを使用して read コマンドに追加できます。
#!/ビン/バッシュ読んだ -p 「あなたの名前と年齢を入力してください:」 名前と年齢
もしも [ $年齢 -lt 17 ]
それから
エコー 「申し訳ありません!!あなたはコースの対象ではありません」
そうしないと
エコー 「よかった!!あなたはコースの資格があります」
なれ
上記のスクリプトでは、特定のコースの資格を得るには、ユーザーが 17 歳以上である必要があります。
Stdin を使用して入力を受け取る (標準入力)
高度なテクニックをさらに一歩進めたい場合は、標準入力の概念を使用できます。スクリプトで stdin を使用すると、簡単な解決策を得ることができます。すでに料金を提出した適格な候補者のリストを除外したい例を見てみましょう。候補者の名前、年齢、フォームの提出日、料金の提出状況などの詳細を含むリストがあります。したがって、以下のスクリプトを使用して、必要な詳細を取得できます。
#!/ビン/バッシュエコー 「手数料の提出に関する詳細:」
猫 / 開発者 / 標準入力 | | 切る -d ' ' -f 1 、 4 | | 選別
このスクリプトは、次の結果を提供します。
まとめ
つまり、これはすべて、bash スクリプトでユーザーから入力を取得するために試すことができる高度な手法に関するものでした。このチュートリアルでは、入力をすばやく入力するための read コマンドと stdin のさまざまなオプションについて説明しました。 bash を初めて使用し、入力の取得方法を知りたい場合は、当社の Web サイトをチェックして詳細を確認してください。