Latest web development tutorials

matriz Shell

A matriz pode armazenar vários valores. Bash Shell suporta apenas matrizes unidimensionais (não suporta arrays multidimensionais), não há necessidade de definir o tamanho da matriz é inicializado (semelhantes a PHP).

Como a maioria das linguagens de programação, o índice de elementos da matriz a partir de zero.

Shell usar parênteses para indicar um elemento de matriz com o símbolo "espaço" separado, a sintaxe é a seguinte:

array_name=(value1 ... valuen)

Exemplos

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

my_array=(A B "C" D)

Nós também podemos definir matrizes com a seguinte norma:

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

Leia matriz

O formato geral é lido valor de elemento de matriz:

${array_name[index]}

Exemplos

#!/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]}"

Executar o script, a saída é a seguinte:

$ chmod +x test.sh 
$ ./test.sh
第一个元素为: A
第二个元素为: B
第三个元素为: C
第四个元素为: D

Obtém uma matriz de todos os elementos

Use o @ ou * pode obter uma matriz de todos os elementos, tais como:

#!/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[@]}"

Executar o script, a saída é a seguinte:

$ chmod +x test.sh 
$ ./test.sh
数组的元素为: A B C D
数组的元素为: A B C D

Veja o comprimento da matriz

Obtém uma matriz de comprimentos de comprimento da corda e obter o mesmo caminho, por exemplo:

#!/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[@]}"

Executar o script, a saída é a seguinte:

$ chmod +x test.sh 
$ ./test.sh
数组元素个数为: 4
数组元素个数为: 4