명령을 정의하기 위해 언제 배열을 사용합니까?

명령을 정의하기 위해 언제 배열을 사용합니까?

명령을 실행하는 데 배열이 가장 적합하다는 글을 어디선가 읽었습니다.

sent='A long sentence with lots of words in it.'
long=('-e' '/ long/d')
lots=('-e' '/ lots of/d')
init=('-e' '/ in it/d')
echo sent | sed -r ${long[@]} ${lots[@]} ${init[@]}

배열이 아닌 변수에 문제가 있어서 이런 배열을 사용해 왔습니다. 이게 꼭 필요한가요? 어레이 중복은 언제이며 언제 필요합니까?

답변1

이는 인수에 공백이 있는 경우 필요합니다. 그러나 올바르게 사용하고 있지 않습니다. 확장자를 인용해야 합니다.

echo sent | sed -r "${long[@]}" "${lots[@]}" "${init[@]}"

관련 정보