일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 28 | 29 | 30 | 31 |
- CodeEngn
- disk
- 디스크
- 리버싱핵심원리
- 안티디버깅
- upx
- ctf-d
- 모바일프로그래밍
- 케쉴주
- SW에듀서포터즈
- 침해사고대응
- crack
- shadow
- 파일해시생성
- Frida
- K-sheild Jr
- 써니나타스
- Reversing
- K-shield Jr 10기
- John the ripper
- Interceptor
- Android
- Multimedia
- Mobile
- ZIP
- Autoware
- swing
- 포렌식
- tar
- Today
- Total
물먹는산세베리아
[Linux]5_1. lab 본문
1. case 문
- score을 2로 선언해 주었고 따라서 B가 출력되었다.
- 0 or 1 (0|1)일 경우 A 출력, 2일 경우 B 출력, 3일 경우 C를 출력하고
- 그 이외(*)에는 out of range를 출력하도록 하였다.
- case문은 case로 시작하고 esac로 끝내야 한다.
- 조건문에서는 )를 사용한다.
- 실행문 끝에는 ;;를 붙인다.
실습)
사용자에게 숫자를 입력 받고 그 숫자가 3, 6 9 중 하나일 때 Hello+숫자를 출력하는 스크립트이다.
그 외에는 Bye를 출력한다.
실행결과에서 input number에 3을 넣었을 때는 Hello 3을 출력하고 조건 이외의 숫자인 2를 넣었을 때는 2를 출력하는 것을 볼 수 있다.
* 입력과 출력을 한줄에 -> -p 사용
2. for문
방법 1)
- 반복문은 do로 시작하고 done으로 끝난다.
- do 다음에 실행문을 작성한다.
* echo 안에서 $사용하면 처음에 1 2 3 4 5라고 쓴 게 차례대로 돌면서 출력된다.
방법 2)
- c 언어와 같은 방법도 가능하다. * 소괄호 2번 (( ))
* echo에 " "를 쓰든 안 쓰든 똑같다.
방법 3)
- for_ex3.sh의 list라는 이름은 사용자 마음대로 설정해도 된다.
- $*은 목록을 가져오는 것이다.
실습)
- 목록을 가져오는 방식을 사용했다.
- for문을 돌리면 한번 돌릴 때마다 자동적으로 줄바꿈된다.
3. while 문
- -le : 작거나 같은 동안에 -> num이 10보다 작거나 같은 동안에
- let == (( )) 괄호 2개는 연산에 쓰인다. 즉 let sum+=num과 ((sum+=num))은 같은 의미이다.
* while 띄어쓰기 주의
실습)
- le는 같거나 작을 때까지를 의미한다.
- (()) 연산자이기 때문에 쌍 괄호를 썼다.
실행결과 줄이 바뀔 때마다 별이 하나씩 늘어남을 알 수 있었다.
즉, y가 x 와 값이 같을 때까지 별을 출력하고 이를 넘어서면 다음 줄로 넘어감을 보여준다.
(echo를 썼기 때문이다.)
* echo 빼면 다음과 같이 출력된다.
4. select 문
- 메뉴를 생성할 수 있는 반복 실행문이다.
- PS3는 프롬프트 변경을 위한 쉘 변수이다. (반복문을 종료하지 않으면 계속 등장한다.)
- 사용자가 입력한 번호는 work에 저장된다. (사용자가 2를 선택하면 work에 2가 저장된다)
- PS3이 출력되려면 REPLY의 값이 null이어야 한다. 반복하려면 반복할 때마다 값이 NULL이면 된다.
*반복문 강제 종료: Ctrl+C
실습)
- Enter Number가 반복되도록 PS3에 넣어주었다.
- list 에는 계절을 집어넣었고 ${list[*]}로 목록을 가져온다.
- season에 들어가는 계절(sping, summer fall, winter)에 따라 다른 문구가 출력된다.
- REPLY 역시 NULL을 대입
하였고 계속 반복되다가 Ctrl+C를 누르니 반복문이 멈추었다.
5. 함수
- study 라는 함수를 만들어 주었다.
- study 함수 안에 Swing Study를 출력하고 매개변수로 받은 fun을 출력할 수 있는 문장을 작성하였다.
- 함수 호출 부분인 study fun에서 fun은 매개변수이고, study는 함수 이름이다. (*매개 변수는 필요하면 적고 그렇지 않으면 안 적어도 무방하다.)
- 매개 변수를 2개 받아야 한다.
* sum= 띄어쓰기 X주의!
- sum $1 $2는 sum 함수를 호출하는 것이다.
- $?는 sum함수의 리턴 값이다.
'Linux' 카테고리의 다른 글
[Linux]5_3. 별찍기와 구구단 (0) | 2020.06.09 |
---|---|
[Linux]5_2. 계산기 프로그램 (0) | 2020.06.09 |
[Linux]4_3. if-else (0) | 2020.06.02 |
[Linux]4_2. read, 매개변수 (0) | 2020.06.02 |
[Linux] 4_1. 명령어 정리 및 실습 (0) | 2020.06.02 |