[리눅스 마스터 2급] - 쉘(Shell)

2023. 2. 28. 12:45·리눅스/리눅스 운영 및 관리
728x90
반응형
SMALL

 

쉘(Shell)?


  • 명령어 해석기(command interpreter)이다.

   사용자가 입력한 명령어를 해석하여 커널에 전달
   cmd와 동일한 기능 수행
   커널과 사용자 간의 대화식 인터페이스를 제공

  • 로그인할 때 실행되어 사용자별로 사용 환경 설정을 가능하게 한다.
  • 강력한 스크립트 언어로 쉘 자체가 프로그래밍 기능을 갖고 있다.
  • 입출력 방향 재지정, 파이프 기능을 제공한다.
  • 포그라운드/백그라운드 프로세스를 실행한다.

종류(본쉘, C쉘)


종류 실행파일                           특징
본쉘 /bin/sh

벨 연구소의 스티븐본이 1979년에 개발
유닉스에서 기본 셸로 사용


콘쉘 /bin/ksh

AT&T사의 데이비드 콘이 1986년에 개발
벨 연구소에서 본쉘을 확장해서 만듦
명령어 완성 기능, 히스토리 기능을 가짐


배쉬쉘 /bin/bash
브레인 폭스가 1989년에 개발
본쉘을 기반으로 GNU프로젝트에 위해 개발
Linux 표준 쉘로 채택
리눅스, 맥OS X 등 다양한 운영체제에서 사용
명령어 완성 기능, 히스토리, 명령어 치환, 편집 등의 지원
POSIX와 호환 가능

지쉘
/bin/zsh
Paul Falstad가 1990년에 개발
확장형 본쉘으로 Korn shell의 재작성 쉘
강력한 history 기능
향상된 명령행 편집 기능
파일명 중간에서부터도 자동 완성 기능 가능
탭이나 화살표 키를 이용해 선택 가능 포함



종류 실행 파일 특징
C쉘 /bin/csh

버클리 대학의 빌조이
가 1981년에 개발
C언어의 특징을 많이 포함
히스토리, 별명, 작업 제어 등의 기능 포함
다양한 프로그래밍 작성 기능을 가짐


tcsh쉘 /bin/tcsh

켄 그릴이 1982년에 개발
확장 C쉘로 BSD 계열에서 가장 많이 사용
명령어 편집 기능을 제공
emacs
history explorer
자동 완성 기능
자동 로그아웃
로그인 상태, 사용자, 터미널 모니터링
$host, $hosttype 새로운 환경 변수




쉘 확인 및 변경

- 로그인 쉘( 사용자가 로그인 후 자동으로 생성)
- 서브 쉘( 사용자가 직접 변경)

로그인 쉘 확인하기

- cat /etc/shell에서 사용할 수 있는 쉘들을 확인할 수 있다.
- /etc/passwd파일에서 계정마다 할당된 쉘을 확인할 수 있다.
- echo $SHELL은 현재 사용자가 사용하는 쉘을 확인할 수 있다.


쉘 변경

- 명령어 chsh -s
-s : 지정하는 쉘을 앞으로 사용할 로그인 쉘로 변경
-l : /etc/shells 파일안에 지정된 쉘을 나열

- 명령어 usermod -s 변경 쉘 계정명


728x90
반응형
SMALL

'리눅스 > 리눅스 운영 및 관리' 카테고리의 다른 글

리눅스 마스터 2급 파일 시스템 생성  (0) 2023.02.28
리눅스 마스터 2급 - mount/umount/fdisk  (0) 2023.02.26
리눅스 마스터 2급 - 저널링(ext3~), 파일 시스템(JFS,xfs,ReiserFS)  (1) 2023.02.25
리눅스 마스터 2급 : 편집기 nano 개발자 및 단축키  (2) 2023.01.24
리눅스 : 편집기 Vi 단축키, 환경 설정 값  (0) 2023.01.24
'리눅스/리눅스 운영 및 관리' 카테고리의 다른 글
  • 리눅스 마스터 2급 파일 시스템 생성
  • 리눅스 마스터 2급 - mount/umount/fdisk
  • 리눅스 마스터 2급 - 저널링(ext3~), 파일 시스템(JFS,xfs,ReiserFS)
  • 리눅스 마스터 2급 : 편집기 nano 개발자 및 단축키
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (314) N
      • 면접 준비 (36) N
        • OS (6)
        • Spring Security (0)
        • Java (2) N
        • DB (9)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      자바
      리눅스
      CSS
      Spring Data Redis
      리눅스마스터2급정리
      springsecurity
      jsp기초
      spring redis
      Spring
      JS
      리눅스마스터2급
      자바스크립트
      java
      프로그래머스
      redis
      백준
      자바 알고리즘
      레디스
      자바기초
      HTML
      스프링프레임워크
      자바 면접
      Til
      자바 반복문
      Springframework
      자바 면접질문
      JSP
      redis 채팅
      jsp request
      JavaScript
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    [리눅스 마스터 2급] - 쉘(Shell)

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.