쉘 스크립트 기초 문법 3 (while, for)

2020. 4. 30. 16:522020/Shell Script

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#! /bin/bash
#1 while loop
num=0
 
while [ $num -le 10 ]
do
    echo $num
    #(( num++ ))
    #$(expr $num + 1 )
    num=$(( num+ 1 ))
done
 
 
 
#2 함수의 인자로 파일의 내용을 받아서 출력한다.
while read line
do
    echo $line
done < test.txt
 
echo "#####################"
 
cat test.txt | while read line
do
    echo $line
done
 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#! /bin/bash
#1
for i in {1..10..2}
do
    echo $i
done
 
#2
for command in pwd date ls
do
    echo "##### $command #####"
    $command
done
 
#3
for output in $(ls)
do
    echo $output
done
 
#4
for (( i=0; i<=10; i++ ))
do
    echo $i
done
 

for i in {1..10..2}에서 1은 시작지점 10은 끝지점 2는 반복할 때마다 더하는 값

for command in CMD1 CMD2 CMD3 ... 

각 명령어가 command변수에 들어가고 $command가 각 명령어를 실행한다.

for output in $(CMD) 명령어의 결과가 OUTPUT변수에 저장된다.

for (( expr1; expr2; expr3 )) C언어와 비슷한 형태의 반복문으로써 괄호가 2개인 것과 띄어쓰기에 주의한다.