2014-01-17 5 views
1

나는 여러 줄 변수를 bash 스크립트에 포함하고 있습니다 (SSH를 통해 자동으로 실행되는 명령의 출력 포함). 이 변수를 배열에 추가하여 변수의 각 행을 배열의 새 행/멤버에 넣을 수 있습니까?배열에 여러 줄 변수를 추가하는 방법

something="first row 
      second row 
      third row" 

echo "${something_array[0]}" - first row 
echo "${something_array[1]}" - second row 
echo "${something_array[2]}" - third row 

이미 배열 내에 데이터가있을 수 있으므로 배열에 행을 추가하려고합니다. 나는 몇 가지 문제에 달려 있지만 나는 이미

IFS='\n' something_array=($(echo -e "$something")) 

을 시도, 플러스 당신은 IFS을 정의 ANSI-C Quoting을 사용하고 싶었 데이터 중

답변

3

를 추가하지 않습니다. 라고 말하십시오.

IFS=$'\n' something_array=($(echo -e "$something")) 

대신에. 배열에 추가하기 위해

는 말 :

IFS=$'\n' something_array+=($(echo -e "$something")) 
+0

감사합니다! 혹시 그걸로 데이터를 추가하는 법을 아십니까? 변수 값 뒤에 + = 시도했지만 모든 데이터가 배열의 첫 번째 행에 저장되었습니다. [0] – lacrosse1991

+0

@ lacrosse1991 아니요, 'IFS = $'\ n 'something_array + = ($ (echo -e "$ something "))'추가해야합니다. – devnull

+0

네, 속임수를 쓰세요, 다시 한 번 고마워요. – lacrosse1991

관련 문제