문자열 배열이 경로로 확장됩니까?

문자열 배열이 경로로 확장됩니까?

bash 배열을 다음과 같이 초기화한다고 가정해 보겠습니다.

my_array=(
    "/usr/bin"
    "/usr/lib/*.so"
)

다음을 사용하여 반복하는 경우:

for array_item in ${my_array[@]} 
do 
    ... 
done 

그러면 확장된 콘텐츠에는 my_array/usr/lib/ 디렉터리에 있는 .so 확장자를 가진 모든 파일에 대한 경로가 포함됩니다. 하지만 배열에 두 개의 문자열, 즉 "/usr/bin"및 가 포함되기를 원합니다 "/usr/lib/*.so".

어떻게 해야 하나요?

답변1

for array_item in "${my_array[@]}"
do 
    ...
done

또는

for idx in $(seq ${#my_array})
do
    array_item="${my_array[$idx]}"
done

관련 정보