카테고리 없음

[bash] array 를 function parameter 로 전달

냐옴 2021. 6. 1. 22:30

 

  • array 를 마지막 파라미터로 전달하고
  • array 파라미터 위치만큼 shift 로 이동
  • ($@) 로 받아서 루프 처리

 

test_pass_array.sh

function pass_array() {
    param1=$1
    param2=$2
    shift
    shift
    list=($@)
    
    echo param1 = $param1
    echo param2 = $param2
    for i in ${list[@]}
    do
        echo i = $i
    done
}

array=(11 22 33 44 55)
pass_array 'aa' 'bb' ${array[@]}

test_pass_array.sh 실행

$ ./test_pass_array.sh
param1 = aa
param2 = bb
i = 11
i = 22
i = 33
i = 44
i = 55