BASH 쉘 배열 길이(요소 수)를 찾는 방법

BASH 쉘 배열 길이(요소 수)를 찾는 방법

나는 다음과 같은 행렬을 가지고 있습니다 :

LCANTIDAD_VM_=4
while [ $i -lt $LCANTIDAD_VM_  ];
do
    VM_NAME_=$(xe vm-list is-control-domain=false | head -n -$aux2 | tail -1 | cut -d ":" -f 2)
    VM_NAME_=$(trim $VM_NAME_)
    UUID=$(obtener_uuid $VM_NAME_)
    array_vm[$i,0]=$VM_NAME_
    LSPACE_DISK_=$(space_vm $UUID)
    array_vm[$i,1]=$LSPACE_DISK_
    array_vm[$i,2]="FALSE"
    array_vm[$i,3]="FALSE"
    array_vm[$i,4]="FALSE"
    let "i++"
    aux2=$(expr $aux2 + $aux3)
done

행렬에 몇 개의 요소가 있는지 알아야 합니다. 다음을 통해 열 수를 얻습니다.

SIZE_=${#array_vm[@]}

변수에LCANTIDAD_VM_반복 횟수가 있고 이 코드 조각에서 횟수를 알 수 있습니다. 하지만 요소를 추가하기 전에 조건을 추가하면 금액이 손실되므로 꼭 알아야 합니다.

답변1

가장 좋은 답변은 @Isaac이 제공합니다. 셸 행렬은 없고 1차원 목록(배열이라고 함)만 있습니다. 그래서 내가 찾고 있는 방법은 존재하지 않습니다. 마지막으로 각 섹터마다 구분 기호를 사용하여 데이터를 저장하고 이를 가져오기 위한 도우미 함수를 만들었습니다.

관련 정보