shell script 4

#4 switch-case문, 함수

1. switch, case문 switch , case문은 다음과 같이 써줄 수 있다. #!/bin/bash case [변수] in case1) [case1일 경우 수행할 작업] ;; case2) [case2일 경우 수행할 작업] ;; ... *) [default로 수행할 작업] ;; esac 예시로 다음과 같이 종족을 고르는 코드를 만들 수 있다. #!/bin/bash case $1 in # $1 == protoss인 경우 protoss) echo "select protoss" # semicolon 2개로 각 case들을 구분한다. ;; terran) echo "select terran" ;; zerg) echo "select zerg" ;; # default는 다음과 같이 *)로 표시해준다. *) e..

shell script 2023.01.14

#3 조건문, 반복문

이번엔 쉘 스크립트에서 조건문, 반복문을 사용하는 방법을 알아보자. 1. 조건문 JS와 큰 차이는 없는데 조건을 주는 방식이 약간 다르다. JS에서는 if, else if, else문이 있었는데, 쉘 스크립트는 else if 대신 elif를 사용하며, 조건문을 fi 명령어로 닫아줘야 한다. 우선 조건을 어떤 형식으로 넣어야 하는지를 알아본 후, 가장 단순한 형태인 if문을 시작으로 if-else, if-elif-else문까지 사용해보자. JS에서 어떤 두 값을 비교해 두 값의 대소 비교를 하거나 동일한지를 확인할 때, 혹은 하나의 값이 원하는 값이 맞는지 확인하기 위해서는 부등호나 등호 등을 사용했다. 쉘 스크립트에서는 이런 관계나 조건 등을 조금 다른 방식으로 적어줘야 조건문을 사용할 때 문제가 없다...

shell script 2022.12.18

#2 변수 선언, 기호

1. intro 쉘 스크립트 파일의 확장자는 .sh라고 표기한다. shell script 카테고리에서 공부할 것은 대부분의 프로그래밍 언어의 기본적인 기능인 - 변수 선언 및 사용 - 제어문 (조건문, 반복문 등..) - 스크립트 명령어 (echo, read, exec 등..) - 배열 - 함수 등이 있다. 하나씩 알아보자. 우선 .sh 확장자를 가진 파일을 만들고 가장 윗줄에 다음과 같이 작성한다. #!/bin/bash 이는 html의 head 부분에 메타데이터를 넣어줄 때가 있는 것처럼 sh 파일의 가장 윗줄에도 메타 데이터가 들어간다. 이는 이 파일을 어떤 쉘로 읽을 것인지를 나타내주는데, 위처럼 마지막에 /bash로 끝난다면 bash를 이용해 이 파일의 코드를 해석하겠다는 것을 의미한다. 2. 변..

shell script 2022.12.13

#1. shell

1. shell 개발 과정에서 우리는 자주 터미널에서 shell을 사용해 명령을 입력한다. 우리가 다루는 컴퓨터의 구조를 살펴보면 다음 그림과 같다. 안 쪽에서부터 보면 우선 컴퓨터는 다양한 하드웨어로 이루어져 있다. 그 하드웨어에 직접 명령을 내려 어떤 동작을 수행하게 하는 것이 kernel이다. 그 kernel(커널)에 사용자는 직접 명령을 전달할 수는 없고 (기계가 알아들을 수 있는 언어를 사람이 직접 만들 수는 없다.) 사용자의 명령을 변환해 커널에 전달해 하드웨어가 이를 수행하게끔 그 매개 역할을 해주는 것이 shell이다. 명령을 수행한 후, 처리 결과도 하드웨어에서 커널을 거쳐 쉘에게 알려준다. shell은 껍데기, kernel은 코어, 중심이라는 뜻을 가지고 있다. 쉘은 사용자가 입력한 명..

shell script 2022.12.10