본문 바로가기
  • 실행력이 모든걸 결정한다
Linux

[Linux] Kernel / Shell / Shell script

by 김코더 김주역 2021. 3. 18.
반응형

이미지 출처 : snipcademy.com/linux-command-line-environment

 

1. Kernel

컴퓨터의 운영체제의 핵심 프로그램이며, 시스템의 모든 것을 완전히 통제한다.

 

2. Shell

사용자와 kernel사이를 연결해주는 프로그램이다.

kernel을 감싸고 있는 층이라서 조개 껍데기(shell)라는 이름이 붙었다고 한다.
Shell은 운영 체제의 기능과 서비스를 구현하는 인터페이스를 제공하는 역할을 한다.

쉘에도 여러 종류가 있는데 터미널에 "echo $0"을 입력하면 사용중인 shell이 출력된다.

 

3. Kernel과 Shell의 동작

사용자가 입력한 명령어를 Shell에 입력하면, Shell에서는 그 명령을 해석해서 Kernel으로 전달해준다.
그 후 Kernel에서는 하드웨어에게 주어진 동작을 수행하도록 명령한다.
그리고 하드웨어의 처리 결과를 Kernel에게 넘겨주고, Kernel은 다시 Shell에 넘겨주면서 사용자는 실행 결과를 확인할 수 있는 것이다.

 

4. Shell script

명령어들을 스크립트 형태로 적어둔 것이며, 주기적으로 한꺼번에 명령어들을 입력해야 할 때 사용할 수 있다.

이 스크립트 파일을 터미널에서 실행하면 스크립트 내의 로직이 수행된다.

 

스크립트 코드 예제 (출처: 생활코딩 Linux)

1줄 : bin 디렉토리 내의 bash 쉘을 사용하겠다고 선언한다. 참고로, 쉘이나 명령어 프로그램들은 bin 디렉토리에 있다. 

2줄 ~ 4줄 : bak이라는 디렉토리가 존재하지 않는다면 생성해준다. if문은 fi로 끝낸다.

5줄 : 현재 디렉토리 내의 .log로 끝나는 파일들을 bak 디렉토리 내에 복사한다.

반응형

댓글