"리눅스 여러 줄 출력을 배열에 담기"의 두 판 사이의 차이

 
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다)
3번째 줄: 3번째 줄:
;Bash 여러 줄 출력을 배열에 담기
;Bash 여러 줄 출력을 배열에 담기
;리눅스 여러 줄 출력을 배열에 담기
;리눅스 여러 줄 출력을 배열에 담기
<source lang='bash'>
<syntaxhighlight lang='bash'>
IFS=$'\n' 배열변수명=(`명령어`)
IFS=$'\n' 배열변수명=(`명령어`)
</source>
</syntaxhighlight>


==실습==
==실습==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# df
[root@zetawiki ~]# df
Filesystem          1K-blocks      Used Available Use% Mounted on
Filesystem          1K-blocks      Used Available Use% Mounted on
15번째 줄: 15번째 줄:
/dev/xvda1              101086    36768    59099  39% /boot
/dev/xvda1              101086    36768    59099  39% /boot
tmpfs                  524288        0    524288  0% /dev/shm
tmpfs                  524288        0    524288  0% /dev/shm
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# IFS=$'\n' ARR=(`df`)
[root@zetawiki ~]# IFS=$'\n' ARR=(`df`)
[root@zetawiki ~]# for VALUE in "${ARR[@]}"; do echo "<---- $VALUE ---->"; done
[root@zetawiki ~]# for VALUE in "${ARR[@]}"; do echo "<---- $VALUE ---->"; done
24번째 줄: 24번째 줄:
<---- /dev/xvda1              101086    36768    59099  39% /boot ---->
<---- /dev/xvda1              101086    36768    59099  39% /boot ---->
<---- tmpfs                  524288        0    524288  0% /dev/shm ---->
<---- tmpfs                  524288        0    524288  0% /dev/shm ---->
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# echo ${ARR[0]}
[root@zetawiki ~]# echo ${ARR[0]}
Filesystem          1K-blocks      Used Available Use% Mounted on
Filesystem          1K-blocks      Used Available Use% Mounted on
[root@zetawiki ~]# echo ${ARR[1]}
[root@zetawiki ~]# echo ${ARR[1]}
/dev/mapper/VolGroup00-LogVol00
/dev/mapper/VolGroup00-LogVol00
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==
44번째 줄: 44번째 줄:
[[분류: bash]]
[[분류: bash]]
[[분류: IFS]]
[[분류: IFS]]
[[분류:리눅스 멀티라인]]

2020년 12월 21일 (월) 11:51 기준 최신판

1 개요[ | ]

Store multi-line output into an array in a Linux bash script
Bash 여러 줄 출력을 배열에 담기
리눅스 여러 줄 출력을 배열에 담기
IFS=$'\n' 배열변수명=(`명령어`)

2 실습[ | ]

[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

3 같이 보기[ | ]

4 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}