
사용자가 입력한 명령어 커널에게 전달될 때 해석기⭐
해석기능, 프로그래밍 기능, 사용자 환경변수를 설정할 수 있다⭐
command line에서 특정 기능이 수행되도록
지정된 스크립트(명령어 집합)
다른 언어보다 빠르게 동작함
복잡함, 어려움 - 오류확인이 어려움
parameter 매개변수
0부터 시작한다.
두번째 파라미터는 <$1>이다.
조건에 따라 프로그램의 흐름을 제어하는게 가능함 (java script)
if [조건]
then
조건이 참일경우 실행될 명령어 문장
fi
( vi 에디터에서 코드 작성 후, sh로 출력 )
if [ “a” = ”a” ] 앞 뒤 공백!!!!!
then
echo “같은 문자열”
fi
:wq 로 저장하고 나가기
// if_test.sh
if [ "a" != "a" ]
then
echo "조건이 참인 경우 실행되는 문장"
else
echo "조건이 거짓인 경우 실행되는 문장"
fi
:wq 로 저장하고 나가기

case 파라미터 또는 입력값
조건1)
조건1에 해당하는 실행 명령 # ;;
조건2)
조건2에 해당하는 실행 명령 # ;;
*)
앞의 모든 조건에 부합하지 않은 경우 실행 명령
esac
#! /bin/sh
echo "계절 판별(Spring/Summer/Fall/Winter)"
case "$1" in
Spring)
echo "봄";;
Summer)
echo "여름";;
*)
echo "잘못된 값을 입력"
esac
exit 0



조건에 || or && 논리연산자 다중조건 사용할 수 있다.
반복횟수를 알 경우 사용
초기값;조건식;증감값 (num : 초기값)
for ~ in
for((초기값;조건식;증감값))
do
조건이 참일 동안 수행되는 명령
done
for 변수 in seq 초기값 마지막값
do
조건이 참일 동안 수행되는 명령
done
for 변수 in 값1, 값2, ....
do
조건이 참일 동안 수행되는 명령
done
while [ 조건식 ]
do
조건식이 참일 경우 실행되는 문장
done
while [ "while문 1~10까지 누적 결과 출력" ]
do # `(틸드사용), 띄워쓰기 X
sum=`expr $sum + $num` # expr은 산술적인 연산을 하는데 사용하는 명령어
echo "1부터 $num까지 중간 합산 결과 : $sum"
num=`expr $sum + 1` # +1 => 1씩 증가
done
echo "1부터 10까지 누적 결과 출력 : $sum"
| for | While |
|---|---|
| 반복횟수를 알 경우 | 반복횟수를 모를 경우 |
| 초기값;조건식;증감값 | 조건식 |
| 셸스크립트, 실행 | 끊어줄 때 break로 반복문을 끝냄 |