리눅스 노트정리

우분투 BASH 셸 기초 정리

차케요 2018. 7. 1. 10:50

우분투 BASH 셸 기초 정리

 

리눅스에서 셸은 '명령'과 '프로그램'을 실행할 때 사용하는 인터페이스인데요. 리눅스를 공부하다 보면 이 녀석의 기본 문법 정도는 알고 있어야 된다고 해서 당분간 셸의 개념과 문법에 대해서 공부하면서 정리를 해보려고 합니다.

 

셸이 하는 기본 역할은 우리가 입력한 명령을 커널에 전달하거나 반대로 커널에서 처리된 결과를 우리에게 보여주는 역할을 하는데요. 우분투에서는 기본적으로 BASH 셸을 사용하고요. BASH 셸의 특징은 다음과 같습니다.

 

■ BASH 셸의 특징

1. Alias

명령 단축 : 리눅스에서 사용하는 긴 명령어를 내가 원하는 짧은 명령어로 바꿔서 사용할 수 있게 해줍니다.

 

2. History

이건 정말 빈번하게 사용되는 기능인데 이전에 입력했던 길고 긴 명령어를 다시 사용할 때는 일일이 입력하지 않고도 위(↑), 아래(↓) 화살표를 눌러서 해당 명령어를 다시 불러올 수 있습니다.

 

3. Tab = 자동완성

어떤 명령어를 입력할 때 처음부터 끝까지 일일이 입력할 필요 없이 적당히 입력하다가 Tab 키를 누르면 자동으로 완성이 되는 기능입니다.

 

4. 그 외에도 연산 기능은 물론이고 Job Control 기능 그리고 프롬프트 제어 기능 및 명령 편집 기능 등이 있는데 지금은 아직 공부하기 전이라서 이것들을 자세하게 정리하기는 힘들지만 앞으로 하나씩 정리하기로 하고요. 다음으로는 셸의 환경 변수에 대해서 알아보겠습니다.

 

 

■ 셸의 환경 변수

이 녀석은 여러 개의 환경 변수를 갖고 있는데요. 환경변수는 [echo $환경변수이름]으로 확인할 수 있습니다. 하나만 후다닥 확인해보고 어떤 환경변수들이 있는지 정리해보죠.

 

 

▲ echo $USER를 입력해서 현재 사용자의 이름을 출력해봤는데요. 그림에서도 알 수 있듯이 대문자를 사용해야 확인할 수 있으니 참고하시고요. 환경변수들은 다음과 같은 것들이 있습니다.

 

환경변수

 설명

 환경변수

 설명

 MAIL

 메일이 보관되는 경로

 OSTYPE

 운영체제 타입

 LOGNAME

 로그인 이름

 LS_COLORS

 LS명령 확장자 색 옵션

 HOSTNAME

 호스트 이름

 USERNAME

 사용자 이름

 HISTFILE

 히스토리 파일의 경로

 HISTSIZE

 히스토리 저장 개수

 BASH

 배시 셸 경로

 BASH_VERSION

 배시 버전

 PS1

 1차 명령프롬프트 변수

 PS2

 2차 명령프롬프트

 COLUMNS

 현재 터미널의 컬럼 수

 LINES

 현재 터미널 라인 수

 USER

 사용자 이름

 DISPLAY

 X 디스플레이 이름

 TERM

 로그인 터미널 타입

 SHELL

 로그인해서 사용하는 셸

 LANG

 기본 지원되는 언어

 PWD

 현재 디렉토리

 HOME

 홈 디렉토리

 PATH

 디렉토리 경로

 

눈에 익숙한 것들도 있지만 아직 한 번도 사용해보지 않은 녀석들도 보이네요. 그래도 이렇게 한 번 입력해보면서 익히니까 어떤 역할을 하는 것들인지는 대충 파악이 됩니다.

 

앞으로 하나씩 사용하면서 익혀보기로 하고 셸의 기초 개념과 환경변수에 관련된 내용은 마무리하겠습니다. 수고하셨어요.