[강좌][shell] for 구문에 대하여

======================================================================

                   SHELL PROGRAMMING [5] for 구문

본 강좌는 본인의 허락없이 무단 복사하거나 타 사이트에 등록하는것을

금지 합니다.  –  서진우(alang at sysmng.com)

======================================================================

5.1 for 구문

쉘 프로그래밍에서 사용되는 for 구문은 일반적인 프로그래밍에서

사용되는 for 구문과는 형태가 약간 다르다.

형식 —————————————-

for 변수 in list1 list2 list3 ……

do

    실행구문

done

———————————————

‘in’ 뒤에 나오는 list 들이 차례로 변수값으로 하나씩 들어가면서

순차적으로 실행구문이 실행되어 진다.

주의점 : list 사이는 반드시 space 로 구분지어져야 한다.

예제 —————————————

#!/bin/sh

A=`ls *.htm`

for B in `echo $A`

do

    mv $B ${B}l

done

——————————————-

위 예제는 현 디렉토리에서 확장자가 .htm 인 파일을 모두 확장자가

.html 로 변환 시킨다.

위 예문에서 A 변수값을 ` 으로 묶었는데 “ 은 프로그램의 결과값을

대응값으로 저장할때 사용된다. “” 나 ” 는 이 안에 묶인 내용을 그

대로 대응하는것이다. 혼돈 없길 바란다.

Unix 나 리눅스에서 echo 는 여러개의 space 나 TAB,ENTER 등을 하나

의 space 로 바꾸는 기능이 있어서 for 문의 in 뒤에 list 를 나열할

때 매우 유용히 사용되어 진다.

위 예문에서 ${B}l 이란 부분이 있는데 이는 리눅스 쉘에서 문자처리

에 관련된 부분으로 $Bl 이라고 하면 단순히 Bl 로 정의된 변수로 인

식하기 때문에 ${B}l 로서 변수값과 문자가 합쳐지는것을 구분하도록

하는것이다.

* 서진우님에 의해서 게시물 복사되었습니다 (2004-10-07 16:03)

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

페이스북/트위트/구글 계정으로 댓글 가능합니다.