매개 변수가 배열 인 경우 어떻게 매개 변수를 확장 할 수 있습니까?Bash에서 배열 인자의 간접 매개 변수 확장
매개 변수가 간단한 변수 인 경우 느낌표를 사용하여 간접 참조를 수행 할 수 있습니다.
single_fruit()
{
if [ "$#" != 1 ]; then exit 1; fi
echo ${!1}
}
MYVAR=Persimmon
single_fruit MYVAR
동일한 매개 변수를 배열에 사용하고 싶습니다. 직접 배열의 요소를 반복하는 대신 :
FRUIT=(Papaya Pineapple)
for f in ${FRUIT[@]}
do
echo ${f}
done
내가 함수 내에서 반복 싶습니다
multi_fruit()
{
if [ "$#" != 1 ]; then exit 1; fi
PARAMETER=${1}
for i in ${!PARAMETER[@]}
do
echo ${i}
done
}
MOREFRUITS=(Mango Melon)
multi_fruit MOREFRUITS
당신은 배열 요소를이 마지막 기능으로 반복 할 수 있습니까?
세 가지 유용하고 독특한 솔루션은 아래와 같다. 나는 가장 단순한 함수 호출을 필요로하고 다른 두 가지를 선정했다. – Calaf