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
------
반응형
'리눅스 > Bash' 카테고리의 다른 글
[bash] 순차적인 숫자 for 문 처리 (0) | 2018.11.13 |
---|---|
[bash] 이전에 실행한 명령을 확인하는 bash의 history 설정 하기 (0) | 2018.07.27 |
[bash] 서브프로세스의 실행 종료를 대기하는 wait 커맨드 활용 (0) | 2018.05.31 |
[bash] 함수의 결과로 문자열 반환 (0) | 2017.12.27 |
[bash] echo 출력시에 글자 색상 지정하는 방법 (0) | 2017.12.27 |