프로그래밍[Univ]/Linux

[Linux] shell 쉘

Cloud Travel 2009. 3. 28. 13:53
1. 쉘
 ⓐ 프로그램 : 명령어의 집합체를 의미한다
 ⓑ 쉘
  > 내부명령어를 cpu에 적절하게 전달하고, 그에 따른 부가적인 작업들을 능동적으로 조절하는 매개체이다.
  > 사용자와 운영체제 사이를 연결시키는 하나의 유틸리티이다.
  > 키보드와 화면을 통해서 사용자와 대화하는 인터페이스 기능을 제공한다.
  > 프로그램으로서의 강력한 기능을 가지고 있다.
  > 사용자의 작업환경을 사용자의 요구사항에 맞추어 설정할 수 있다.
  > 개인의 기호에 맞쳐 사용하면된다.

2. 쉘의 종류
 ⓐ Bourne Shell
  > 상호 대화식 방식을 취하고 있지 않다.
 ⓑ C shell
  > 커맨드 구조 : C언어와 유사
  > 프로그램 개발에 편리한 기능도 내장하고 있다.
 ⓒ Korn Shell
  > 유닉스에 제공되는 쉘로 호환성이 있다.
 ⓓ Bash shell
  > GNU시스템의 표준셀
  > 작업 제어가 가능하다
  > 명령행 편집 모드

3. 쉘 활용
 ⓐ 사용자가 입력한 명령어를 평가 -> 명령에 대한 일을 간단히 하여 작업의 실행 절차를 간소화한다
 ⓑ 자신만의 고유한 명령어를 만든다.

4. 쉘 환경 변수
 ⓐ HOME = /home/login //홈 디렉토리를 설정한다
 ⓑ LOGNAME = login //LOGNAME은 자동으로 로그인 ID와 동일하게 설정된다
 ⓒ PATH = path //셀이 명령에 대해 찾는 디렉토리 목록을 표현
 ⓓ PS1 = prompt //PS1은 프롬프트의 모습을 정의하는 1차 쉘프롬프트이다
 ⓔ PWD = directory //현재위치를 나타내어주는 역활
 ⓕ SHELL = shell //기본 shell 조정

5. 자신만의 고유한 명령어
 > .bash_profile 에서 설정한다.
 > alias // 환경 변수 설정시 명령어의 간소화를 위하여 자주 사용되고 있는 명령
  >> alias 별명 = '명령어'
     ex) alias rm = 'rm -i'

4.5번 >> 환경 변수를 변경하면 바뀐 source를 적용시켜야한다.
 >> source 파일이름
  ex) source .bash_profile

6. 사용가능한 쉘 확인
 ⓐ chsh -l
 ⓑ cat  /etc/shells

7. 현재 사용중인 SHELL확인
 > echo $SHELL

8. 사용중인 쉘 변경
 > chsh -> 실행후 나오는 것에 맞춰 작성한다
  shell이 변경되면 로그 아웃후 다시 로그인을 해야지 적용 할 수 있다.