2021. 3. 11. 16:38ㆍComputer(인강)/시스템 프로그래밍
안녕하세요 bannavi입니다^ㅅ^
오늘은 쉘스크립트의 두번째 시간! 조건문에 대해 살펴보도록 하겠습니다
바로 시작하겠습니다
4번라인, 6번라인에서 대괄호를 빼고 실행시켜봤습니다.
대괄호를 뺀 부분은 그대로 출력이 되는 모습을 보실 수 있습니다.
아하 대괄호를 써야 우리가 원하는 값을 인식하는군요.
실습
* 아이디 관련 정보 리스트 변수로 만들고, 각 정보 출력하기
1. 실제 이름(0번 인덱스)
2. 나이(1번 인덱스)
3. 직업(2번 인덱스)
배열로 세개의 데이터를 만들고
(숫자는 $표시로 만들면 문자로 인식하는 것이고 달러 표시를 안해도 숫자로 인식하기 때문에 정상적으로 출력이 됩니다)
wq!로 나와 주시고요
코드를 출력해보면 정상적으로 출력이 되는 모습을 확인하실 수 있습니다.
특별한 기호들이 쉘 스크립트에서는 이용되는 경우가 많습니다.
그중에 아래와 같은 기호들이 있습니다.
실습
쉘 프로세스 번호, 쉘 스크립트 이름, 명령줄 인수, 모든 명령줄 인수리스트, 인수 개수 출력해보기
echo다음 순서부터 pid, 쉘 이름, 첫번째 인자, 이름뺀 나머지 인자리스트, 이름 뺀 나머지 인자의 갯수
전체를 쉘의 이름으로 보고 있고요 인자, 인자리스트, 갯수 이렇게 나오는것을 보실 수 있습니다.
연산자
프로그램 언어에서 연산은 아주 기본적인 기능이죠?
쉘스크립트에서도 명령어를 사용하여 명령을 하도록 되어있습니다.
expr: 숫자계산
expr을 사용하는 경우, 역작은 따옴표(')를 사용해야함(작은 따옴표가 아님)
연산자 *과 괄호()앞에서는 역슬래시()와 같이 사용
연산자와 숫자, 변수, 기호 사이에는 space를 넣어야 함!
괄호 앞에 역슬래시 한 모습
실행을 해보면 -5가 나온 모습을 확인하실 수 있습니다.
조건문 문법
# 기본 if 구문
명령문을 꼭 탭으로 씌워야 하는것은 아님.(then과 pi안에만 들어가 있으면 됌)
실습
쉘스크립트 조건문
* 두 인자값을 받아서 두 인자값이 다르면 'different values'를 출력하라
exit를 안쓴다고 해도 어차피 이 프로그램안에 더이상 실행할 코드가 없기 때문에 이 프로그램은 종료가 될 것입니다.
실행을 시키면 값이 다르다고 이렇게 나오네요
조건
1. 조건 작성이 다른 프로그래밍 언어와 달리 가독성이 현저히 떨어짐, 필요할 때마다 참조하면 됨.
2. 문자 비교
3. 수치비교(<,>는 if 조건시 [[]]를 넣는 경우 정상 작동하기도 하지만, 기본적으로 다음 문법을 사용하는 것을 권장 )
실습
쉘스크립트 조건문
# 첫번째 인자값이 두번째 인자값보다 크면, 이를 출력하는 코드 작성해보기
wq로 나와주신 후에 실행된것을 보면 아래와 같습니다
'Computer(인강) > 시스템 프로그래밍' 카테고리의 다른 글
쉘스크립트 - 04 협업 예제 및 정리 (0) | 2021.03.12 |
---|---|
쉘 스크립트 03 - 반복문과 실제 예제 (0) | 2021.03.11 |
쉘 스크립트 - 01 이해와 변수 (0) | 2021.03.10 |
시그널 동작 매커니즘 01 사용법 이해 (0) | 2021.03.10 |
IPC기법 - 02 실습2 (0) | 2021.03.10 |