728x90
반응형
SMALL
for ~ in 문
for ~ in 문은 다음 형식과 같이 변수에 각각의 값을 넣은 후 do 안에 있는
'반복할 문장'을 실행한다.
그러므로 값의 개수 만큼 반복 실행하게 된다.
for 변수 in 값1, 값2, 값3 ...
do
반복한 문장
done
이렇게 진행된다.
소스설명
- 2행 : 합계를 누적할 변수를 0으로 초기화 한다.
- 3행 : i 변수에 1~10까지 반복해 넣으면서 5행을 10회 실행한다. 기존의 for문과 비슷하게 for ((i=0;i<=10;i++))로 변경해서 사용할 수 있다. (변경할 때 괄호가 2개인 것을 반드시 알아야 합니다.) 또 seq 명령을 사용할 수도 있습니다. 예를들어 seq 1 10은 1에서 10까지 숫자를 돌려줍니다.
- 5행 : hsp에 i 변수의 값을 누적한다. (결국 1부터 10까지 계속 더한다).
다음은 현재 디렉터리에 있는 셸 스크립트 파일 ( *. sh) 파일 이름과 앞에 3줄을 출력하는 프로그램이다.
소스설명
- 2행 : fname 변수에 ls *.sh 명령의 실행 결과를 하나씩 넣어서 4~5행을 반복한다. 즉, 파일 개수만큼 실행을 반복한다.
- 4행 : 파일 이름을 출력한다.
- 5행 : 파일의 앞에 3줄을 출력한다.
while 문
while문은 조건식이 참인 동안 계속 반복하는 특성을 가진다.
소스설명
- 2행 : 조건식 위치에 [ 1 ] 또는 [ ; ] 이 오면 항상 참이다. 그러므로 4행을 무한히 반복 실행한다. 컨트롤 + C를 눌러 취소가능하다.
이번엔 1에서 10까지 합계를 출력하는 기능을 while문을 이용해서 작성해보겠습니다.
소스설명
- 2행 : 누적한 sum 변수 초기화
- 3행 1~10 까지 증가할 i 변수 선언
- 4행 i 가 10 보다 작거나 같으면 6~7행 실행하도록
- 6행 : sum에 i의 값을 누적해 저장
- 7행 : i 변수의 값을 1씩 증가 시킨다.
이번엔 비밀번호를 입력받고, 비밀번호가 맞을 때까지 계속 입력받는 스크립트를 작성해 보겠습니다.
소스설명
- 3행 : pwd 변수에 값을 입력 받는다.
- 4행 : pwd 변수의 값이 1234가 아니면 6~7행을 실행하고, 맞으면 while 종료
- 7행 : 다시 pwd 변수에 값을 입력받도록 한다.
728x90
반응형
LIST
'리눅스공부 > 셸 스크립트 프로그래밍' 카테고리의 다른 글
[프로그래밍] 사용자 정의 함수 / 리눅스 셸 스크립트 프로그래밍 사용자 정의 함수 (0) | 2022.12.22 |
---|---|
[프로그래밍] 반복문 unitl문 , break,continue,exit, return 등 사용 / 리눅스 셸 스크립트 프로그래밍 (0) | 2022.12.21 |
[프로그래밍] IF문과 CASE문 / 셸 스크립트 프로그래밍 조건문 (0) | 2022.12.21 |
[프로그래밍] 셸 스크립트 변수 / 셸 프로그래밍 변수/ 리눅스 셸 스크립트 프로그래밍 변수의 입력과 출력 (1) | 2022.12.20 |
[프로그래밍] 셸 스크립트 프로그래밍 / 리눅스 셸 스크프립트 실행방법 (0) | 2022.12.20 |
댓글