ユーザー入力の読み取りは、方程式の一部です。今日の記事では、シェルスクリプトでコマンドライン引数を読み取る方法を学びます。シェルスクリプトは、Linuxユーザーにとって不可欠なツールです。これらは、日常のタスクを自動化し、独自のコマンドまたはマクロを作成する上で主要な役割を果たします。
これらのシェルスクリプトは、引数の形式でユーザーからの入力を受け取ることができます。
シェルスクリプトに引数を渡すと、スクリプトのローカルシーケンスに使用できます。これらの引数を使用して、シェルスクリプトの変数と同じように、出力を取得したり、出力を変更したりすることもできます。
コマンドライン引数とは何ですか?
コマンドライン引数は、bashシェルで実行中にスクリプトに渡されるパラメーターです。
Linuxでは位置パラメータとも呼ばれます。
コマンドライン引数を使用して、コマンドとそれに関連するパラメータが格納されているメモリ内の位置を示します。コマンドライン引数を理解することは、シェルスクリプトを学んでいる人々にとって不可欠です。
この記事では、コマンドライン引数の概念とシェルスクリプトでの使用について説明します。
シェルスクリプトがコマンドライン引数を理解する方法
コマンドライン引数は、シェルスクリプトをユーザーにとってインタラクティブにするのに役立ちます。これらは、スクリプトが操作する必要のあるデータを識別するのに役立ちます。したがって、コマンドライン引数は、実際のシェルスクリプトの使用に不可欠な部分です。
bashシェルには、シェルスクリプトを介して渡す引数を指すために予約された特別な変数があります。 Bashはこれらの変数を数値的に保存します($ 1、$ 2、$ 3、…$ n)
ここで、シェルスクリプトの最初のコマンドライン引数は$ 1、2番目は$ 2、3番目は$3です。これは9番目の引数まで続きます。変数$0は、スクリプトまたはコマンド自体の名前を格納します。
位置パラメータである特殊文字もいくつかありますが、それらの機能はコマンドライン引数と密接に関連しています。
特殊文字$#は、引数の総数を格納します。また、すべての引数を示すために使用されるワイルドカード文字として$@と$*があります。 $$を使用して現在のシェルスクリプトのプロセスIDを検索し、$?スクリプトの終了コードを出力するために使用できます。
シェルスクリプトでコマンドライン引数を読み取る
これで、Linuxのコマンドライン引数についての理解が深まりました。次に、この知識をnetstatコマンドの実用化に使用します。
このチュートリアルでは、シェルスクリプトでコマンドライン引数を使用する方法を学ぶための例を見ていきます。
最初に、前のセクションで説明したすべての予約変数の動作を示すシェルスクリプトを作成します。 nanoを使用する または任意の編集者を選択して、以下をコピーします。
これは、この目的で使用する予定のシェルスクリプトです。
#!/bin/sh echo "Script Name: $0" echo "First Parameter of the script is $1" echo "The second Parameter is $2" echo "The complete list of arguments is $@" echo "Total Number of Parameters: $#" echo "The process ID is $$" echo "Exit code for the script: $?"
完了したら、スクリプトをPositionalParameters.shとして保存し、テキストエディタを終了します。
次に、システムでコマンドラインを開き、次の引数を使用してシェルスクリプトを実行します。
./PositionalParameters.sh learning command line arguments
スクリプトは指定された引数で実行され、位置パラメーターを使用して出力を生成します。手順を正しく実行すると、次の画面が表示されます。
私たちの出力は、予約された変数を呼び出したときに適切な引数で置き換えることにより、正しい出力を示しています。
プロセスはプロセスID14974で実行され、終了コード0で終了しました。
まとめ
シェルスクリプトでコマンドライン引数を読み取ることができることは、ユーザーからの入力を受け取り、論理的な経路に基づいて出力を生成できるスクリプトを作成できるため、不可欠なスキルです。
コマンドライン引数を使用すると、スクリプトを使用して、日常的に処理する必要のある反復的なタスクを大幅に簡素化し、時間と労力を節約しながら独自のコマンドを作成できます。
この記事が、シェルスクリプトでコマンドライン引数を読み取る方法を理解するのに役立つことを願っています。コメント、質問、提案があれば、下のコメントでお気軽にご連絡ください。