シェル配列
複数の値を配列に格納できます。 Bash Shell は 1 次元配列のみをサポートし (多次元配列はサポートされていません)、初期化中に配列サイズを定義する必要はありません (PHP と同様)。
ほとんどのプログラミング言語と同様に、配列要素の添字は 0 から始まります。
シェル配列は括弧で表され、要素は「スペース」記号で区切られます。構文形式は次のとおりです:
array_name=(value1 ... valuen)
例
#!/bin/bash # author:php中文网 # url:www.php.cn my_array=(A B "C" D)
配列を定義するために添字を使用することもできます:
array_name[0]=value0 array_name[1]=value1 array_name[2]=value2
Read array
Read配列 要素値の一般的な形式は次のとおりです:
${array_name[index]}
インスタンス
#!/bin/bash # author:php中文网 # url:www.php.cn my_array=(A B "C" D) echo "第一个元素为: ${my_array[0]}" echo "第二个元素为: ${my_array[1]}" echo "第三个元素为: ${my_array[2]}" echo "第四个元素为: ${my_array[3]}"
スクリプトを実行すると、出力結果は次のようになります:
$ chmod +x test.sh $ ./test.sh 第一个元素为: A 第二个元素为: B 第三个元素为: C 第四个元素为: D
配列内のすべての要素を取得します
@ または * を使用して配列内のすべての要素を取得します例:
#!/bin/bash # author:php中文网 # url:www.php.cn my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组的元素为: ${my_array[*]}" echo "数组的元素为: ${my_array[@]}"
スクリプトを実行すると、出力結果は次のようになります:
$ chmod +x test.sh $ ./test.sh 数组的元素为: A B C D 数组的元素为: A B C D
配列の長さを取得します
配列の長さを取得する方法は、たとえば文字列の長さを取得する方法と同じです。 :
#!/bin/bash # author:php中文网 # url:www.php.cn my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组元素个数为: ${#my_array[*]}" echo "数组元素个数为: ${#my_array[@]}"
スクリプトを実行すると、出力結果は次のようになります:
$ chmod +x test.sh $ ./test.sh 数组元素个数为: 4 数组元素个数为: 4