본문 바로가기
Linux/Bash Shell Script

리눅스 if

by 준섭이 2023. 12. 26.
728x90

### Shell Scripts 내에 if문 사용

 

#!/bin/bash

echo -n "Are you sure? (y/n) : "
read confirm

if [ "${confirm" != "y" ]; then
	echo "Please, check!!!"
else
	echo "Starting...."
fi

### 조건절에서 test 명령에 세가지 형태의 타입을 사용할 수 있다.
# 1) 수치 (산술) 비교
[ $A -eq $B ] : A와 B의 값이 같은 경우
[ $A -ne $B ] : A와 B의 값이 다른 경우
[ $A -gt $B ] : A가 B보다 큰 경우
[ $A -lt $B ] : A가 B보다 작은 경우
[ $A -ge $B ] : A가 B보다 크거나 같은 경우
[ $A -le $B ] : A가 B보다 작거나 같은 경우
# * 소수점이하의 숫자는 무시되므로 유의하여야 한다.

# 2) 문자열 비교
[ "String1" = "String2" ] : 두 문자열이 같은 경우 
[ "String1" != "String2" ] : 두 문자열이 다른 경우
[ -z "String2" ] : 문자열의 길이가 0인경우
[ -n "String2" ] : 문자열의 길이가 0이 아닌 경우

# 3) 파일 비교
[ -s filename ] : file이 존재하면서 크기가 0보다 큰경우
[ -f filename ] : directory가 아닌 file의 경우 참 (크기가 0인 경우 포함)
[ -d directoryname ] : file이 아닌 directory인 경우 참
[ -w filename ] : 쓰기가 가능한 경우 참
[ -r filename ] : 읽기가 가능한 경우 참
[ -g filename ] : file상에 set-group-id가 설정되었으면 참
[ ! -option filename ] : option의 조건이 거짓이 되는 경우 참
[ -e filename ] : 파일이 존재하고 파일이 있는 경우 참

echo "Are you bluemary?? Please answer yer or no"
read you
if [ "${you}" = "yes" ]; then
	echo "Yes, I am bluemary"
    elif [ "${you}" = "no" ]; then
    	echo "NO!!! On no..."
        echo "I am Athena"
else
	echo "Sorry, ${you} not recognized, Enter the yes or no"
    exit 1
fi
exit 0

'Linux > Bash Shell Script' 카테고리의 다른 글

aws instance start script  (0) 2023.12.26
숫자 check script  (0) 2023.12.26
리눅스 for  (0) 2023.12.26
리눅스 while  (0) 2023.12.26
리눅스 날짜별 폴더 생성 스크립트  (2) 2014.02.24