쉘 스크립트 실습 및 while & for 문

쉘 스크립트 실습 및 while & for 문

1. 출력하기

 - vim test1.sh를 입력후, 다음과 같이 작성

    ※ 허가 거부 시, sudo chmod 765 test1.sh 로 권한 부여

#!/bin/bash
num1=1
num2=2
num3=3
num4=4
num5=5

name=$1
age=$2

echo $num1
echo $num2
echo $num3
echo $num4
echo $num5

/home/user1/sh-test/test2.sh $name $age

 

#!/bin/bash
name=$1
age=$2
echo $#  #매개변수 개수
echo $*  #전체 매개변수
echo $$  #현재 프로그램의 PID

echo "hi my name is $name!! i'm $age years old"

 - ./test1.sh John 30을 입력하여 실행

 

2. if 조건문 사용

 - 조건식을 사용하여 조건식이 True이면 원하는 값이 출력되게 함

 - 나이가 20보다 크거나 같으면 "성인입니다."라고 출력하기 (20보다 작으면 아무것도 출력 안됨)

 - vim test3.sh를 입력한 후, 다음과 같이 입력

#!/bin/bash
age=$1

if [ "$age" -ge 20 ]
then 
    echo "성인입니다."
fi

 

 - 실행 (./test3.sh 21)

 

3. else 조건문 사용

 - if 문의 조건식이 False 일 경우, else를 사용하여 원하는 것을 출력

 - 나이가 20보다 크거나 같으면 "성인", 작으면 "미성년자"라고 출력하기

 - vim test4.sh를 입력한 후, 다음과 같이 입력

#!/bin/bash
age=$1

if [ "$age" -ge 20 ]
then
	echo "성인입니다."
else
	echo "미성년자입니다."
fi

 

 - 실행 (./test4.sh 18)

 

4. elif 조건문 사용

 - if 조건문이 False일 경우 elif 조건문을 사용하여 다른 조건문을 만듦

 - 나이에 따라 다른 결과를 출력하기 (vim test5.sh 입력후, 다음과 같이 입력)

#!/bin/bash
age=$1

if [ "$age" -lt 14 ]
then
	echo "초등학생"
elif [ "$age" -le 17 ]
then
	echo "중학생"
elif [ "$age" -lt 20 ]
then
	echo "고등학생"
else
	echo "성인"
fi

 

 - 실행 (./test5.sh 19)

 

5. while 문 사용

 - 조건식이 True일 동안 계속 실행되는 while 문을 사용

 - 값이 1씩 서서히 증가하게 만듦 (vim test6.sh)

#!/bin/bash
num=1
while [ "$num" -le 10 ]
do
	echo $num
	num=$(($num + 1))	# 서서히 증가 (+는 띄어서 입력)
done

 

 - 실행 (./test6.sh)

 

6. for 문

 - 원하는 만큼 반복하는 for 문을 사용

 - vim test7.sh

#!/bin/bash

for val in 1 2 3 4 5 6 7 8 9 10
do
	echo $val
done

 

 - 실행 (./test7.sh)

'Back-End Study > Linux' 카테고리의 다른 글

PHP  (0) 2022.09.15
쉘 스크립트 (사칙연산 프로그램)  (2) 2022.09.15
쉘 스크립트  (0) 2022.09.14
에디트 플러스  (0) 2022.09.08
ftp를 passive로 서비스하기  (0) 2022.09.08