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


+ Recent posts