Latest web development tutorials

массив Shell

Массив может хранить несколько значений. Bash Shell поддерживает только одномерные массивы (не поддерживает многомерные массивы), нет необходимости, чтобы определить размер массива не инициализируются (похожими на PHP).

Как и в большинстве языков программирования, индекс элементов массива, начиная с нуля.

Shell использовать круглые скобки для обозначения элемента массива с символом "пространство" отделенной, синтаксис выглядит следующим образом:

array_name=(value1 ... valuen)

примеров

#!/bin/bash
# author:本教程
# url:www.w3big.com

my_array=(A B "C" D)

Мы также можем определить массивы, используя следующий стандарт:

array_name[0]=value0
array_name[1]=value1
array_name[2]=value2

Чтение массива

Общий формат считывается значение элемента массива:

${array_name[index]}

примеров

#!/bin/bash
# author:本教程
# url:www.w3big.com

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:本教程
# url:www.w3big.com

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:本教程
# url:www.w3big.com

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