Bash – 공백이 아닌 \n 으로 개행된 변수의 내용을 배열에 넣고 호출하기.

 

#변수 DATA에 값을 할당.
DATA=$'Line 1
Line 2
Line 3
Line 4'

#변수 DATA에 저장된 값들을 \n을 구분자로하여 배열 lines에 저장.
IFS=$'\n' read -d '' -r -a lines <<<"$DATA"

#변수 total에 배열 lines 배열 요소의 갯수를 저장.
total="${#lines[@]}"

# 모든 배열 요소 출력.
for i in "${lines[@]}"
  do
    # 배열 요소를 하나씩 출력.
    echo "${i}"
done

echo -e "\n"

#배열요소 갯수가 저장된 변수 total을 출력.
echo $total
echo -e "\n"

#배열 요소의 값을 출력, 0번부터 시작.
echo "${lines[0]}"
echo "${lines[1]}"
echo "${lines[2]}"
echo "${lines[3]}"


 

#위 코드를 실행한 결과.

Line 1
Line 2
Line 3
Line 4

4

Line 1
Line 2
Line 3
Line 4