01.리눅스 기초 - 쉘(Shell)과 디렉토리 구조

ID짱재·2021년 3월 8일
1

Llinux

목록 보기
6/17
post-thumbnail

🌈 Shell vs Kernel


1. shell과 kernel 이란?

  • shell과 kernel은 운영체제 안에 포함된 영역임
  • shell은 껍데기, 주변이란 뜻을 갖고, kernel은 알맹이, 핵심과 같은 뜻이 있음

    1) 쉘(shell)

    • 사용자가 터미널에서 명령을 입력하였을 때, 이 명령을 Kernel이 이해할 수 있도록 처리
    • 즉, 사용자의 요청을 shell의 프로그램을 통해 해석되고, 그 결과가 kernel에게 전달

    2) 커널(kernel)

    • 운영체제에서 가장 중심이 되어 하드웨어를 직접적으로 제어하는 것이 kernel의 역할임
    • 쉘(shell)에게 전달받은 사용자의 요청을 하드웨어에게 전달하여 처리할 수 있게 함

2. ZSH 다루기

1) echo

  • echo 명령어는 터미널에서 출력을 해주는 명령어(python에 print와 비슷함)
  • echo [입력값] ⇢ 입력값 출력
  • 🔍 echo $0 ⇢ 현재 사용중인 shell의 구체적인 제품명을 출력

2) ZSH 특징

  • bash와 ZSH는 유사한 특징을 갖고 있으나, ZSH가 부가적인 기능을 포함하고 있어 편리하다는 평가를 받음
  • ZSH에서는 탭으로 자동완성 기능이 가능
  • 🔍 cd[tap]하면 숨긴 폴더가 보여짐
  • 🔍 cd /u/j[tap]하면 자동완성됨 ⇢ pwd /Users/jangjaewon

🌈 디렉토리의 구조


1. 디렉토리의 구조란?

  • UNIX 계열에서는 실행 프로그램의 성격에 따라서 위치하는 규칙이 존재함
  • "/" ⇢ 는 최상위 디렉토리로 root라 부름(cd /)
  • "/bin" ⇢ 는 User Binaries로 사용자가 사용하는 명령들이 여기 있음
  • "/sbin" ⇢ 는 System Binaries PC를 끄거나, 재부팅하는 등 스시템을 제어하는 명령들이 여기 존재함
  • "/etc" ⇢ 모든 프로그램에 필요한 구성 파일이 들어있고, 여기서 파일을 수정하면 프로그램의 설정을 변경 할 수 있음
  • "/dev" ⇢ 장치파일이 존재하는 디렉토리로 터미널 장치, USB 또는 시스템에 연결된 모든 장치를 포함함
  • "/var" ⇢ 변수 파일을 나타내는 디렉토리로 파일을 사용할 때마다 변경됨
  • "/tmp" ⇢ 임시 파일이 포함된 디렉토리로 재부팅할 때마다 삭제됨
  • "/usr" ⇢ 바이너리, 라이브러리, 문서 및 소스 코드를 포함함.
  • "/home" ⇢ 모든 사용자가 개인 파일을 저장할 수있는 홈 디렉토리로, "cd ~"로 어디서든 한번에 이동 가능함
  • "/opt" ⇢ 소프트웨어를 설치할 때, 위치를 설정하지 않아도 적절한 디렉토리에 자동으로 설치해주는데 이를 opt에서 관여함. 프로그램을 설치할 때 경로를 직접 저장해줘야하는 경우 opt에 설치해주는 것이 좋은 방법이라 함
    • 프로그램이 어디에 설치되어있는지 찾는 방법 : whereis [프로그램명]

https://www.thegeekstuff.com/2010/09/linux-file-system-structure/

profile
Keep Going, Keep Coding!

0개의 댓글