본문 바로가기
개발/Linux

Shell

by devsu 2020. 3. 30.

출처 - https://hackingzone.tistory.com/5

Kernel

  • 운영체제에서 제일 코어가 되는 부분은 Kernel
  • Shell을 통해 입력받은 동작을 hardware가 동작 시키고 결과값을 다시 Shell에 전달

Shell

  • 사용자가 linux에서 입력한 부분을 linux에서 출력해주는데 이러한 입력한 명령어를 입력하는 부분
  • 입력한 명령을 해석해서 Kernel에게 전달

Kernel과 Shell을 분리한 이유는?

  • 사용자가 입력한 명령어를 해석하는 Shell
  • 사용자에 맞은 Shell프로그램을 통하여 Kernel을 조종할 수 있도록 분리한것 같음

echo $0

  • echo 명령어는 뒤에 인자에 대한 내용을 화면에 출력
  • 현재 Shell 카테고리에 속하는 구체적인 제품중 하나인 프로그램(bash)을 나타냄
  •  

 

bash와 zsh의 차이

  • zsh은 bash보다 더 풍부한 기능을 가지고 있음

Shell Script

  • 자주사용하거나 자주사용하지는 않지만 양이 많은 명령어 등을 저장해놓고 사용
  •  

log파일 모두를 bak 폴더에 복사

 

Shell Script 예제

  • #!/bin/bash
    • 작성하고있는 backup파일을 실행했을 때 처음 값을 보고 아래 작성되는 코드들이 /bin/bash 아래에 있는 명령어로 해석한다
  • bash에 존재하는 문법 사용 예제
    • 현재디렉토리에 bak가 없으면 만들고 있으면 만들지 않음
      • if ! [ -d bak ]; then
        • mkdir bak
        • fi 
    • 모든 파일중에 .log파일을 디렉토리로 복사한다
      • cp *.log bak
    • ctrl + x(nano 메뉴 출력)
    • ./backup시 권한 문제로 실패
      • chmod +x backup(x는 excutable - 실행가능하다는 권한)
    •  

 

Shell Script 라는 것은 실행되야 할 순서를 각본을 짜서 저장한 파일을 의미한다.

 

'개발 > Linux' 카테고리의 다른 글

putty 환경 설정  (0) 2020.04.01
Linux(ssh-server,putty - 원격접속)  (0) 2020.03.31
리눅스 설치  (0) 2020.03.30
IO Redirection  (0) 2020.03.30
Linux 입문  (0) 2020.03.19