리눅스/Bash
[bash] 문자열 분할(split) 하여 루프문 처리
hs_seo
2018. 6. 19. 14:39
Bash 스크립트에서는 공백(' '), 개행문자열('\n')을 이용하여 문자열을 분할하여 루프문을 처리할 수 있다.
IFS 는 입력필드 구분자를 말한다.
#!/bin/bash
vString="A-111-DK"
IFS='-' read -ra vStr <<< "$vString"
echo "${vStr[0]}"
echo "${vStr[1]}"
echo "${vStr[2]}"
[실행결과]
$ ./test.sh
A
111
DK
#!/bin/bash
vArrayTemp="John 1 C
David 2 B
Wick 3 A"
IFS=$'\n'
vArray=($vArrayTemp)
IFS=$' '
for vItem in "${vArray[@]}"
do
echo "------"
arr=($vItem)
echo "${arr[0]}"
echo "${arr[1]}"
echo "${arr[2]}"
echo "------"
done
<실행결과>
------
John
1
C
------
------
David
2
B
------
------
Wick
3
A
------
반응형