Information Security
03-1 쉘(Shell)의 특징 본문
쉘(Shell) : 명령어 해석기. 사용자가 입력한 명령어를 커널에 전달
Bash(Bourne Again Shell) : 본쉘(Bourne Shell)을 개량하여 만든 것이다. 대부분 리눅스에서 배시 쉘 제외한 쉘들은 사용하지 않는다.
Bash Shell의 특징
(1) 탭 완성(tab completion)
-사용하려는 명령의 일부만 입력 후 tab 키 이용하여 자동 완성
-이 기능을 사용하면 빠르고 편리하게 명령어 입력을 할 수 있다.
타이핑 실수도 줄어든다.
vi /etc/sysconfig/network-scripts/ifcfg-eth0
저번 시간에 사용했던 위의 명령어를 tab 키를 이용하여 완성시켜 보겠습니다.
먼저 e만 쓰고 tab 키를 누른다.
/etc/ 까지 자동완성
s만 쓰고 tab 키를 누른다.
그러면 자동완성이 되지 않는다.
이런 경우에는 tab 키를 한번 더 누른다.
중복되는 문자열들이 출력된다.
이것을 보고 최소 입력해야 할 내용을 알 수 있다.
sysco 까지 쓰고 tab 키를 누른다.
자동완성
나머지도 같은 방법으로 입력한다.
(2) 명령행 히스토리(history)
-키보드 방향키 위(↑) 아래(↓)를 이용하여 이전에 실행했던 명령어를 불러낼 수 있다.
-잘 못 입력한 명령어도 다시 불러와 잘못된 곳만 수정할 수 있다.
관련 명령어
history : 이전에 실행했던 명령어를 확인할 수 있다.
※ 아직 배운 명령어가 없으므로 아무 말이나 썼습니다.
!! : 가장 최근에 실행한 명령어가 실행된다.
![히스토리번호] : history 명령어 출력값 중에서 입력한 번호의 명령어가 실행된다.
(3) Alias
-자주 사용하는 명령어에 별칭을 지정하여 사용할 수 있다.
#alias [이름]="명령어" : alias 설정
#unalias [이름] : alias 해제
clear 명령어는 자주 사용하므로 별칭을 지정하여 사용해 보겠습니다.
-clear 명령어 : 화면의 내용을 지워준다. (프롬프트를 위로 올림)
#alias : 현재 시스템에서 설정된 alias 확인
지정한 별칭 "c"를 입력
clear 명령어가 실행되었다.
이제 alias를 해제 시켜보겠습니다.
alias 목록에서 사라진 것을 확인
더이상 "c"로 명령어가 실행되지 않는다.
(4) 중괄호 확장(brace expansion)
-괄호를 기반으로 명령어를 확장할 문자열을 콤마(,)로 구분해서 기술하고 중괄호 앞뒤에는 치환되지 않는 패턴을 적는다.
-echo 명령어 : 입력한 내용이 화면에 출력된다.
(5) 반복문
-명령어를 여러 번 실행할 때나 증가하는 패턴을 처리할 때 유용한 기능
(6) 줄 편집(Line-editing)
-쉘에서 사용하는 단축키
-명령줄을 편집
Ctrl + A : 커서 맨 왼쪽으로 이동
Ctrl + E : 커서 맨 오른쪽으로 이동
Ctrl + D : 현재 커서에 위치한 글자 지움,
(아무것도 입력되지 않은 상태에서 사용하면 로그아웃, 연결해제 되므로 주의)
Ctrl + L : clear 명령어와 같은 역할, 화면의 내용 모두 지움
Ctrl + C : 강제 취소
(7) 역 점진 탐색(reverse increment search)
-Ctrl + R을 누르면 프롬프트가 로 변한다.
프롬프트가 변하면 예전에 사용했던 명령어를 한 글자씩 입력하며 찾을 수 있다.
'Linux' 카테고리의 다른 글
03-3 기본 명령어(pwd, ls, cd) (0) | 2017.09.12 |
---|---|
03-2 리눅스 구조 (0) | 2017.09.12 |
02-3 리눅스 소개, 구조 (0) | 2017.09.09 |
02-2 컴퓨터 시스템(Computer System) (0) | 2017.09.09 |
02-1 원격접속 설정 (0) | 2017.09.09 |