bash shell을 써서 서버 환경을 자동으로 설정할 수 있도록 하는 스크립트를 작성하고 있어요 ^^
이거 잼있네요! 문법을 다 볼 시간이 없어서, 필요한 것들만 찾아서 만들고 있는데요.
약간은 어설프지만, 잼있네요!! (근데 왜 눈이 촉촉할ㄲ...)
자주 까먹으니깐, 간단하게 정리해둡니다.
이번에는 문자열을 특정 기준으로 자르는 것을 간단하게 정리해보려구요.
일단 문자열을 가지고 있는 파일은 다음과 같은 문자열이 기록되어 있습니다.
cat setting
user:admin
passwd:temp
:(colon, 콜론)으로 분할하고 싶은건데요.
즉 user와 admin을 분할하고 싶은거구요. passwd와 temp를 나눠서 값을 얻어내고 싶습니다.
이때 사용할 수 있는 것이 각 line(라인, 줄)을 읽기 위해서 while 문과 분할해서 배열에 저장해주는 IFS(Internal Field Separator)입니다.
일단 모든 줄을 돌기위해서 다음과 같이 작성하구요.
while read line
do
.....
done < "setting"
:으로 분할해서 배열로 저장하기 위해서 아래와 같은 script를 사용합니다.
IFS=': ' read -a array <<< $line
array에 접근하기 위해서는 ${array[0]}, ${array[1]}과 같이 사용하시면 됩니다.
그럼 종합해보면 아래와 같습니다.
#!/bin/bash
while read line
do
IFS=': ' read -a array <<< $line
echo ${array[0]}
echo ${array[1]}
done < "setting"
출력 결과는 아래와 같습니다.
user
admin
passwd
temp
'리눅스 > 깃,쉘' 카테고리의 다른 글
bash shell script - append text to end of file (0) | 2014.11.18 |
---|---|
Linux에서 Git 사용할 때 유용한 Shell Scripts (0) | 2014.11.13 |
bash shell script - if else statement (0) | 2014.11.09 |
bash shell script - string split (0) | 2014.11.08 |
bash shell script - string replace line in file (0) | 2014.11.07 |
bash shell script - string insert to specific line in file (0) | 2014.11.07 |
Xcode 6.1 + Github (0) | 2014.11.03 |
GitHub 미세먼지 팁 001 - 비어있는 폴더 Push는 안됨 (0) | 2014.08.29 |