답변:
다음과 같이 빈 배열을 만들어 변수가 배열임을 지정할 수 있습니다.
var_name=()
var_name 그런 다음에 의해보고 된 배열이됩니다
$ declare -p var_name
declare -a var_name='()'
예:
var_name=()
for i in {1..10}; do
var_name[$i]="Field $i of the list"
done
declare -p var_name
echo "Field 5 is: ${var_name[5]}"
다음과 같이 출력됩니다.
declare -a var_name='([1]="Field 1 of the list" [2]="Field 2 of the list" [3]="Field 3 of the list" [4]="Field 4 of the list" [5]="Field 5 of the list" [6]="Field 6 of the list" [7]="Field 7 of the list" [8]="Field 8 of the list" [9]="Field 9 of the list" [10]="Field 10 of the list")'
Field 5 is: Field 5 of the list
위의 방법 외에도 선언문으로 배열을 만들 수도 있습니다.
-a 옵션이있는 선언문을 사용하여 변수를 배열로 선언 할 수 있지만 필수는 아닙니다. 모든 변수는 명시 적 정의없이 배열로 사용할 수 있습니다. 실제로 모든 변수가 배열이고 아래 첨자가없는 할당은 "[0]"에 할당하는 것과 같습니다. 배열의 명시 적 선언은 선언 내장 선언을 사용하여 수행됩니다.
declare -a ARRAYNAME
연관 배열은 다음을 사용하여 생성됩니다.
declare -A name.
선언 및 읽기 전용 내장을 사용하여 배열 변수에 속성을 지정할 수 있습니다. 각 속성은 배열의 모든 멤버에 적용됩니다.
배열 변수를 설정 한 후 다음과 같이 액세스하십시오.
${array_name[index]}
이것은 실제로 C와 동일합니다. C에서는 원하는대로 배열을 취할 수 있습니다. 여기서 빈 배열을 가져 와서 값을 넣을 수 있습니다.
bar=()
Simple For Loop는 해당 배열에서 가치를 얻고 다음을 인쇄합니다.
bar=()
for ((i=0;i<10;i++));
do
read bar[$i] #Take Value in bar array
echo bar[$i]
done
희망이 있습니다.