IT/Shell Script

Shell 스크립트 기초 알아보기 - 반복문 for문

슈다루냥 2021. 6. 23.

안녕하세요. 슈다 입니다.

 

리눅스나 유닉스를 사용하다 보면 흔하게 접하는 것이 바로 쉘 스크립트 입니다.

 

스크립트란 간단히 표현하면 쉘 명령어를 묶어놓은 파일입니다.

다수의 명령어나 조건 들을 미리 정의하고 실행만 하면 결과를 얻을 수 있는 장점이 있죠.

즉 단순 반복으로 확인해야 하는 작업들을 쉘 스크립트를 통해 간단히 확인할 수도 있습니다.

 

이러한 쉘 스크립트에 대해 조금씩 알아보는 시간을 가져보기로 합니다.

 

 

단순 반복문 for문 알아보기

 

 

for 문은 변수로 읽어들이는 갯수 만큼 반복합니다.

변수를 출력하는 간단한 for문을 통해 확인해 봅니다.

 

 

LIST를 변수로 받아들이는 for문입니다.

LIST 변수에 각각 a,  abc,   "a b c"  3가지 경우를 입력하고 명령을 실행해 봅니다.

 

LIST="a" 인 경우

 

a 한줄만 출력되고 스크립트가 종료됩니다.

 

 

 

LIST="abc" 인 경우

 

abc 한줄이 출력되고 스크립트가 종료됩니다.

 

 

 

LIST="a b c" 인 경우

 

a b c 가 한번에 출력되지 않고 행을 나누어 출력됩니다.

 

for문은 abc가 붙어 있으면 abc를 하나의 변수로 인식하고

공백으로 나누어 있다면 공백을 구분자로 인식하여  a, b, c 를 각각의 변수로 받아들입니다.

 

 

즉 위의 두가지 경우는 반복이 1번이었지만

a b c 로 공백을 준 for문은 반복이 총 3번이었습니다.

 

 

 

LIST 변수에 직접 값을 입력하지 않고 목록을 정의한 파일을 지정할 수도 있습니다.

 

 

/tmp/list 파일에는 a b c가 행이 구분되어 입력되어 있습니다.

 

 

 

스크립트를 실행하면 a b c가 모두 다른 행에 출력되는, 즉 3번의 반복이 일어납니다.

 

 

 

예제는 a b c를 이용하였지만 실전에서는 계정명이 될 수도, hostname이 될 수도 있습니다.

예제의 echo $i  부분은 반복을 필요로 하는 명령어로 변경하여 사용할 수 있습니다.

 

 

반응형