bash
bash는 Readline이라는 라이브러리를 사용해 커맨드라인 편집을 구현한다
키 | 동작 |
---|---|
Ctrl-a | 커서를 줄의 시작 부분으로 이동 |
Ctrl-e | 커서를 줄의 끝으로 이동 |
Ctrl-f | 커서를 한 글자 앞으로 이동(오른쪽 화살표 키와 동일). |
Ctrl-b | 커서를 한 글자 뒤로 이동(왼쪽 화살표 키와 동일). |
Alt-f | 커서를 한 단어 앞으로 이동합니다. |
Alt-b | 커서를 한 단어 뒤로 이동합니다. |
Ctrl-l | 화면을 지우고 커서를 왼쪽 상단 모서리로 이동합니다. clear 명령도 같은 작업을 수행합니다. |
키 | 동작 |
---|---|
Ctrl-d | 커서 위치에서 문자를 삭제합니다. |
Ctrl-t | 커서 위치의 문자를 앞의 문자와 바꾸기(교환) 합니다. |
Alt-t | 커서 위치의 단어를 그 앞의 단어로 바꿉니다. |
Alt-l | 커서 위치에서 단어 끝까지의 문자를 소문자로 변환합니다. |
Alt-u | 커서 위치에서 단어 끝까지의 문자를 대문자로 변환합니다. |
Killing: 잘라내기
Yanking: 붙여넣기
잘라낸 항목은 kill-ring 버퍼(메모리의 임시 저장 영역)에 저장된다.
키 | 동작 |
---|---|
Ctrl-k | 커서 위치에서 줄 끝까지 텍스트를 삭제합니다. |
Ctrl-u | 커서 위치에서 줄의 시작 부분까지 텍스트를 삭제합니다. |
Alt-d | 커서 위치에서 현재 단어의 끝까지 텍스트를 삭제합니다. |
Alt-Backspace | 커서 위치에서 현재 단어의 시작 부분까지 텍스트를 삭제합니다. 커서가 단어의 시작 부분에 있으면 이전 단어를 삭제합니다. |
Ctrl-y | kill-ring에서 텍스트를 가져와서 커서 위치에 삽입합니다. |
completion 메커니즘 이용 : <tab 키> 이용
사용 가능한 완성의 종류
키 | 동작 |
---|---|
Alt-? | 가능한 완성 목록을 표시합니다. 대부분의 시스템에서는 Tab 키를 한 번 더 누르면 훨씬 쉽게 이 작업을 수행할 수 있습니다. |
Alt-* | 가능한 모든 완성을 표시합니다. 이 기능은 두 개 이상의 가능한 일치를 사용하려는 경우에 유용합니다. |
홈 디렉토리의 .bash_history
파일에 최근 500 또는 1000개의 입력 명령 히스토리 유지
[me@linuxbox ~]$ history | less
[me@linuxbox ~]$ history | grep /usr/bin
88 ls -l /usr/bin > ls-output.txt
[me@linuxbox ~]$ !88
88 ls -l /usr/bin > ls-output.txt
88 : history 목록의 명령 줄 번호
키 | 동작 |
---|---|
Ctrl-p | 이전 히스토리 항목으로 이동합니다. 위쪽 화살표와 동일한 동작입니다. |
Ctrl-n | 다음 히스토리 항목으로 이동합니다. 아래쪽 화살표와 같은 동작입니다. |
Alt-< | 히스토리 목록의 시작(상단)으로 이동합니다. |
Alt-> | 히스토리 목록의 끝(하단), 즉 현재 커맨드라인로 이동합니다. |
Ctrl-r | 역방향 검색. 현재 커맨드라인에서 히스토리 목록 위로 자동 순차 검색합니다. |
Alt-p | 역방향 수동 순차 검색. 이 키를 사용하여 검색 문자열을 입력하고 Enter 키를 누르면 검색이 수행됩니다. |
Alt-n | 정방향 수동 순차 검색. |
Ctrl-o | 히스토리 목록에서 현재 항목을 실행하고 다음 항목으로 이동합니다. 이 기능은 히스토리 목록에서 일련의 명령을 다시 실행하려고 할 때 유용합니다. |
셸은 ! 문자를 사용해 히스토리 목록의 항목에 대한 특수한 타입의 확장 제공
입력 | 동작 |
---|---|
!! | 마지막 명령을 반복 |
!number | 히스토리 목록 항목 number 를 반복 |
!string | string으로 시작하는 마지막 히스토리 목록 항목을 반복 |
!?string | string이 포함된 마지막 히스토리 목록 항목을 반복 |