Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

codingfarm

shell 본문

Linux/Ubuntu

shell

scarecrow1992 2020. 11. 4. 00:12
  • shell은 리눅스 커널과 사용자를 연결하는 역할을 수행한다.
  • 리눅스의 기본제공 shell인 bash shell은 UNIX의 shell인 bourne shell과 호환성을 유지하면서 편리한 기능을 제공하여 리눅스 뿐만 아니라 UNIX에서도 널리 사용된다.

 

1. 셸의 기능과 종류

  • shell은 사용자와 리눅스 커널사이에서 중간자 역할을 수행한다.
  • bourne shell, bash shell 등 여러 종류가 있다.

 

1.1 shell의 기능

  1. 명령어 해석기 기능
    • 사용자와 커널 사이에서 명령을 해석하여 전달한다.
      • 가령 사용자가 로그인을 하면 shell이 자동으로 실행되어 사용자가 명령을 입력하기를 기다린다.
    • 프롬프트 : 셸이 사용자의 명령을 기다리고 있음을 나타내는 표시
    • 셸의 작동방식
      1. 대기상태로 있다가 사용자가 입력한 명령이나 스크립트를 읽어들여 이 명령이 셸 자체의 내장명령인지 판단
      2. 내장명령일 경우 추가 작업 없이 바로 실행
      3. 내장명령이 아니면 별도의 실행파일이 있다는 것이다.
      4. 셸은 자식 프로세스를 만들고 이 자식프로세스가 실행파일을 실행하게 한다.
      5. 실행되는 동안 부모인 Shell은 대기상태가 된다.
      6. 자식 프로세스가 실행을 종료하면 shell의 대기상태가 해제되어 복귀하면서 다시 프롬프트를 출력한다.
  2. 프로그래밍 기능
    • shell 자체에 프로그래밍 기능이 있으므로 프로그램도 만들 수 있다.
    • 여러 명령을 자동화 시킬 수 있다.
    • 이렇게 작성된 shell program을 shell script라 부른다.
  3. 사용자 환경 설정 기능
    • 사용자 환경을 설정할 수 있도록 초기화 파일 기능을 제공한다.
    • 명령을 찾아오는 경로를 설정한다.
    • 파일과 디렉터리를 새로 생성할 때 기본 권한을 설정한다.
    • 다양한 환경 변수등을 설정한다.
    • 사용자가 로그인을 할 때 이 초기화 파일이 실행되어 사용자별로 특성에 맞게 초기 환경이 설정된다.

 

2. 셸 기본 사용법

  • bash shell의 사용법에 대해 알아보겠다.

 

2.1 shell 지정하고 바꾸기

  • 현재 사용중인 shell의 종류를 알아보자
  • grep명령으로 사용자 정보를 가지고 있는 /etc/passwd 파일에서 특정 사용자의 정보를 찾아 확인한다.

  • 가장 앞에 로그인 ID가 나오고 마지막에 사용자의 기본셸인 /bin/bash가 나온다.
  • crow사용자는 로그인 할 때 기본 shell로 bash shell이 지정되는 것이다.
  • 로그인 셸 : 사용자가 로그인을 하면 자동으로 생성되는 기본 셸

 

 

 

 

 

 

 

 

 

 

 

 

'Linux > Ubuntu' 카테고리의 다른 글

특수 접근 권한 SetUID, SetGID  (0) 2021.03.05
입출력 방향 바꾸기  (0) 2020.11.15
vi  (0) 2020.11.03
파일 링크(file link)  (0) 2020.10.31
vim 설치 및 설정  (0) 2020.10.20
Comments