2 つのサンプル シェル スクリプトで説明する Bash 位置パラメータ
パラメータは、値を格納するエンティティです。名前、数字、またはいくつかの特殊文字を指定できます。変数は、名前で示されるパラメーターです。いくつかの変数はすでに設定されており、これらのほとんどは値を割り当てることができません。
これらの変数には、シェル スクリプトが実行中の環境を知るために使用できる有用な情報が含まれています。
Bash には 2 種類のパラメータが用意されています。
- 位置パラメータ
- 特殊パラメータ
この記事では、bash の位置パラメーターについて例を挙げて説明します。
この記事は、進行中の bash チュートリアル シリーズの一部です。
例 1:Bash 位置パラメータ – $0、$1、$2 ..
位置パラメータは、スクリプトが呼び出されたときにスクリプトに与えられる引数です。 $1 から $N の範囲である可能性があります。 N が 1 桁以上の場合、${N} のように中括弧で囲む必要があります。
変数 $0 はベース名です
次の例では、2 つの引数を取得し、これら 2 つの整数の間の算術演算結果を提供します。
<センター> センター>まず、以下に示すように、算術.sh シェル スクリプトを作成します。
$ cat arithmetic.sh #!/bin/bash echo -e "\$1=$1" echo -e "\$2=$2" let add=$1+$2 let sub=$1-$2 let mul=$1*$2 let div=$1/$2 echo -e "Addition=$add\nSubtraction=$sub\nMultiplication=$mul\nDivision=$div\n"
次に、以下に示すように、適切なパラメーターを指定して Math.sh を実行します。
$ ./arithmetic.sh 12 10 $1=12 $2=10 Addition=22 Subtraction=2 Multiplication=120 Division=1
上記の出力では、$1 の値は 12 で、$2 の値は 10 です。
シェル組み込みの「let」を使用すると、シェル変数に対して算術演算を実行できます。上記のスクリプトは、指定されたパラメーターに対して加算、減算、乗算、除算などの算術演算を実行します。
例 2:Bash 位置パラメータの設定/設定解除
組み込みの set コマンドを使用して、位置パラメーターを設定および設定解除します。
まず、以下に示すように positional.sh シェル スクリプトを作成します。
$ cat positional.sh #!/bin/bash # From command line echo -e "Basename=$0" echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # From Set builtin set First Second Third echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # Store positional parameters with -(hyphen) set - -f -s -t echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # Unset positional parameter set -- echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3"
上記のスクリプトは、最初にコマンド ライン引数を出力し、次に set コマンドが位置パラメータを明示的に設定します。 – を使用して設定すると、オプションの末尾が参照されます。後続のすべての引数は、'-' で始まる場合でも位置パラメーターです。他の引数なしで「–」で設定すると、すべての位置パラメータが設定解除されます。
次に、以下のように positional.sh を実行します。
$ ./positional.sh Basename=t.sh $1=12 $2=10 $3= $1=First $2=Second $3=Third $1=-f $2=-s $3=-t $1= $2= $3=
次の記事では、bash の特殊パラメーターについて例を挙げて説明しましょう。
-
シェルトレースを使用してシェルスクリプトでコマンドの実行をトレースする方法
シェルスクリプトデバッグシリーズのこの記事では、3番目のシェルスクリプトデバッグモードであるシェルトレースについて説明し、いくつかの例を見て、その動作と使用方法を示します。 このシリーズの前のパートでは、他の2つのシェルスクリプトデバッグモードである詳細モードに明確に光を当てています。 および構文チェック これらのモードでシェルスクリプトのデバッグを有効にする方法のわかりやすい例を含むモード。 Linuxでシェルスクリプトデバッグモードを有効にする方法–パート1 シェルスクリプトで構文チェックのデバッグモードを実行する方法–パート2 シェルトレースとは、シェルスクリプトでコマンド
-
6 つの実用的な例を含む Bash シェル関数のチュートリアル
Bash シェル関数は、グループに単一の名前を使用して、後で実行するために複数の UNIX / Linux コマンドをグループ化する方法です。 . Bash シェル関数は、通常の Unix コマンドと同じように実行できます。シェル関数は、それらを解釈するための新しいプロセスを作成することなく、現在のシェル コンテキストで実行されます。bash エイリアスと関数の両方を使用すると、より長い、またはより複雑なコマンドのショートカットを定義できます。ただし、エイリアスは、このチュートリアルで説明されているように、これらの関数が許可する制御フロー、引数、およびその他の巧妙なものを許可しません。 この