Bash 쉘스크립트 배열

혹시해서 적어두지만

bash쉘스크립트에서는 따로 자료형이 정해지지 않았기 때문에 그냥

아무변수나 배열처럼 쓸수있다.

배열 대입
episode_array[0]="abc"
episode_array[1]="def"

배열출력
echo ${episode_array[0]}
echo ${episode_array[1]}
# 덧> 쿼우팅은 알아서 할것!

배열 삭제
unset 명령어 이용, 한다고 합니다 아직 사용해 보진 않음;;
unset episode_array
unset eposode_array[0]

배열 전체 길이 구하기 (첨자길이)
${#episode_array[@]}
$(#episode_array[1]} # 이게 1번 array 길이 구하는거였나?

배열A를 배열 B로 복사
B=("${A[@]")


배열의 첨자(인덱스) 안에 @,* 들어가는거는 IFS에서 $*와 $@ 와 비슷하다고 한다'

함수를 쓸떄 아규먼트로 보내기

Movie_Choice "${episode_array[@]}"

이렇게 쓰면
function Move_Choice()
{
     echo "$1"      #episode_array[0]
     echo "$2"      #episode_array[1]
     echo "#3"      #episode_array[2]
}
 

이상하게 배열자체를 함수로 넘기질 못하겠네;

이거 아시는분은 댓글을!!!

Movie_Choice ("${A[@]")

이게 안먹히기 때문에

function Movie_Choice()
{
     array2=( "$@" )
}

Movie_Choice ${episode_array[@]}


이렇게 사용하고 있다..;; 이거분명 넘기는 방법이 있을텐데 모르겠음

아나 귀차너 그냥 전역으로 쓰고 때려지우는게 나을듯