티스토리 뷰

[Shell Script] 리눅스 명령어 실행 결과를 배열에 담기




- 명령어 실행결과가 여러줄 일때 배열에 담기

IFS=$'\n' 배열변수명=(`명령어`)


[root@zetawiki ~]# df

Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/mapper/VolGroup00-LogVol00

                      27678892  18857720   7392488  72% /

/dev/xvda1              101086     36768     59099  39% /boot

tmpfs                   524288         0    524288   0% /dev/shm



[root@zetawiki ~]# IFS=$'\n' ARR=(`df`)

[root@zetawiki ~]# for VALUE in "${ARR[@]}"; do echo "<---- $VALUE ---->"; done

<---- Filesystem           1K-blocks      Used Available Use% Mounted on ---->

<---- /dev/mapper/VolGroup00-LogVol00 ---->

<----                       27678892  18857720   7392488  72% / ---->

<---- /dev/xvda1              101086     36768     59099  39% /boot ---->

<---- tmpfs                   524288         0    524288   0% /dev/shm ---->



[root@zetawiki ~]# echo ${ARR[0]}

Filesystem           1K-blocks      Used Available Use% Mounted on

[root@zetawiki ~]# echo ${ARR[1]}

/dev/mapper/VolGroup00-LogVol00



출처 : Bash 여러 줄 출력을 배열에 담기

댓글