만자의 개발일지

[IT/Network] 쉘(Shell)과 쉘 스크립트(Shell Script) 본문

IT/Network

[IT/Network] 쉘(Shell)과 쉘 스크립트(Shell Script)

박만자 2021. 11. 1. 09:06

쉘을 들어가기 앞서 커널에 대한 이해를 하시는 것을 추천 드립니다.

https://yoo11052.tistory.com/75

 

[IT/Network] 커널이란?

커널(Kernel) 커널이란 운영체제의 핵심적인 부분으로 전원이 켜짐과 동시에 메모리 위에 올라가는 운영체제의 부분을 말한다. 그림과같이 운영체제가 하드웨어에 있는 자원에 접근할 수 있도록

yoo11052.tistory.com

 

쉘(Shell)

쉘은 리눅스, 유닉스와 같이 명령어와 프로그램을 실행할 때 사용하는 사용자와 운영체제 사이에 있는 인터페이스입니다. 사용자의 명령을 해석해서 커널에게 전달해주는 중요한 역할을 수행합니다. 커널과 쉘을 분리하게 되면 여러가지 쉘이 만들어질 수 있기 때문에 사용자의 선택의 폭이 넓어지게됩니다.

쉽게 말해 쉘은 커널과 사용자간의 다리역할을 수행 한다고 생각하시면 됩니다.


앞서 말했다시피 쉘의 종류는 되게 다양하게 있습니다.

그중 가장 널리 쓰이고 잘 알려진 bash(Bourne-again shell)과 zsh(Z shell)에 대해 알아보도록 하겠습니다.

 

bash(Bourne-again shell)

bash는 리눅스의 표준 쉘로 1989년에 브라이언 폭스가 만들었습니다. 무료 Unix 호환 운영 체제를 만들기 위해 자유 운영체제의 일부가 될 자유 소프트웨어 쉘을 개발 하였고 이름은 "Bourne Again Shell"(bash)로 지정했습니다.
bash는 sh쉘을 기반으로 korn shell과 C shell의 장점만 합하여 만들어 졌습니다. 무엇보다도 무료였기 떄문에 많은 사람들이 bash를 찾게 된 이유중 하나입니다.

bash의 특징

  • Alias 기능(명령어 단축 기능)
  • History 기능
  • 연산 기능
  • Job Control 
  • 자동 이름 완성 
  • 프롬프트 제어
  • 명령 편집

 

쉘 스크립트(Shell Script)

쉘 스크립트는 쉘에게 어떤 명령들을 실행할지 명령어들을 적어 놓은 스크립트 파일입니다.

예시로 아래와 같은 test라는 스크립트 파일이 현재 디렉토리 내에 있다면

#!/bin/bash

echo "hello"
# ./test
hello

위와 같이 실행할 수 있습니다.

 

쉘 스크립트 특징

  • 파일 이용 기능
  • 프로그램 실행 기능
  • 문자열 출력 기능

 

 

참고

 

 

'IT > Network' 카테고리의 다른 글

[IT/Network] 프로비저닝(Provisioning) 이란?  (0) 2021.12.28
[IT/Network] 커널이란?  (0) 2021.10.29
[IT/Network] 서브넷팅과 서브넷마스크  (0) 2021.10.27
[IT/Network] 클라우드 3대 모델  (0) 2021.10.25
[IT/Network] TCP 와 UDP  (0) 2021.09.09
Comments