쉘 활용, 셸 활용

(2023-10-16)

쉘의 확인 및 변경, chsh


1. [Unix/Linux]   활용 기초

  ㅇ 기본  (로그인 ) 
     - 사용자 로그인시에, 자동으로 생성되는 기본 을 말함

  ㅇ 의 기동
     - 사용자가 로그인할 때, 기본 이 자동 수행되고,
     - 제반 사용자 환경이 설정된 초기화 파일이 실행되고,
     - 이후 사용자 명령의 입력을 기다림 (프롬프트 대기)

  ㅇ 프롬프트
     - 관리자 권한 : #
     - 일반사용자 : $ (sh, bash 등) 또는 % (FreeBSD)


2. 의 특수 문자

  ㅇ  *,  ?,  |,  ;,  [],  ~,  '',  "",  ``,  >  등

     - (물결) ~ : 현재 사용자 홈 디렉토리
        . 한편, ~로그인ID 이면, 명시된 해당 사용자의 홈 디렉토리
     - (대시) - : cd로 디렉토리 변경 직전의 작업 디렉토리
     - (파이프) | : 왼쪽 명령 실행 결과를 오른쪽 명령의 입력으로 전달
     - (리다이렉션) > : 입출력의 방향을 바꿈
     - (이전 실행 명령의 리턴값) : $?
        . 例) $ echo $?  =>  만일, 이전 실행 명령이 성공했다면, 0을 출력하며 성공을 알림


3. 서브  (자식 , 하위 )

  ㅇ 기본 프롬프트 상에서 다른 하위 을 생성 가능
     - 여러 들이 마치 체인 처럼 연결 가능
     - 서브 의 종료는, ctrl+d,exit 등으로 가능하며, 이는 logout과 같음


4. 의 확인 및 변경

  ㅇ 기본 의 확인 
     - /etc/passwd 암호 파일 내 해당 사용자 정보의 끝 항목에 기본 이 기록되어 있음
        . 例) grep 사용자명 /etc/passwd
     - 대부분, /bin/sh에 심볼릭 링크되어 있는 것으로도 확인 가능
        . 例) ls -l /bin/sh

  ㅇ 기본 의 변경 : chsh [옵션] [사용자명]
     - 옵션
        . -s : 변경코자하는 을 명시할 때 사용 (--shell)
        . -l : 사용 가능한 의 목록 정보를 출력 (/etc/shells 파일 내용의 출력) (--list-shells)
        . -u : chsh 사용법 출력 (--help)
        . -v : 설치한 패키지의 버전 정보 출력 (--version)
     - 例) chsh -s /bin/csh user1 : 사용자 user1에게 절대경로 /bin/csh를 갖는 기본 로 바꿈

  ㅇ 현재 사용중인  확인
     - 例) echo $SHELL                     ☞ 쉘 환경 변수 참조
     - 例) grep 사용자명 /etc/passwd

  ㅇ 현재 사용 가능한 의 종류 확인
     - /etc/shells 파일 내 저장되어 있음
     - 例) chsh –l 명령어를 치거나, cat /etc/shells 내용 확인


5. 신호 (특수 키)               ☞ 시그널 참조의 종료 : Ctrl + d (^D)
     - 은 입력의 끝으로 보고, 을 종료 (즉, exit,logout 과 같은 효과)
  ㅇ 의 중지 : Ctrl + c (^C)
     - 현재 실행 프로세스의 강제 중지
  ㅇ 의 일시 중지 : Ctrl + z (^Z)
     - 현재 실행 프로세스의 일시 중지


6. 에서, 명령어 형식 및 유형명령어 형식
     - 명령어 [-옵션] 매개변수 ...

  ㅇ 종류
     - 단축 명령 (에일리어스)
     -  예약어
     - 함수 
     - 내부 명령어쉘 내부 명령어 참조
     - 외부 명령어유닉스 명령어 참조


7. 에서, 실행 파일의 실행 과정

  ㅇ 부모 은, 자식 프로세스를 만들고, 
  ㅇ 자식 프로세스가 실행 파일을 실행하는 동안, 부모 은 대기하며,
  ㅇ 자식 프로세스의 종료 후, 부모 셀로 복귀하며, 
  ㅇ 부모 은, 다시 프롬프트를 내놓게 됨

쉘 (Shell)
   1. 쉘 (Shell)   2. 셀 활용   3. 쉘 스크립트   4. 프롬프트   5. 쉘 환경 변수   6. 쉘 내부 명령어  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"