6. Good to Know

froajnzd·2024년 11월 7일
0

the linux command line

목록 보기
6/6
post-thumbnail

커맨드라인 편집

bash

bash는 Readline이라는 라이브러리를 사용해 커맨드라인 편집을 구현한다

Cursor Movement (커서 이동)

동작
Ctrl-a커서를 줄의 시작 부분으로 이동
Ctrl-e커서를 줄의 끝으로 이동
Ctrl-f커서를 한 글자 앞으로 이동(오른쪽 화살표 키와 동일).
Ctrl-b커서를 한 글자 뒤로 이동(왼쪽 화살표 키와 동일).
Alt-f커서를 한 단어 앞으로 이동합니다.
Alt-b커서를 한 단어 뒤로 이동합니다.
Ctrl-l화면을 지우고 커서를 왼쪽 상단 모서리로 이동합니다. clear 명령도 같은 작업을 수행합니다.

Modifying Text

동작
Ctrl-d커서 위치에서 문자를 삭제합니다.
Ctrl-t커서 위치의 문자를 앞의 문자와 바꾸기(교환) 합니다.
Alt-t커서 위치의 단어를 그 앞의 단어로 바꿉니다.
Alt-l커서 위치에서 단어 끝까지의 문자를 소문자로 변환합니다.
Alt-u커서 위치에서 단어 끝까지의 문자를 대문자로 변환합니다.

Cutting and Pasting (Killing and Yanking) Text

Killing: 잘라내기
Yanking: 붙여넣기

잘라낸 항목은 kill-ring 버퍼(메모리의 임시 저장 영역)에 저장된다.

동작
Ctrl-k커서 위치에서 줄 끝까지 텍스트를 삭제합니다.
Ctrl-u커서 위치에서 줄의 시작 부분까지 텍스트를 삭제합니다.
Alt-d커서 위치에서 현재 단어의 끝까지 텍스트를 삭제합니다.
Alt-Backspace커서 위치에서 현재 단어의 시작 부분까지 텍스트를 삭제합니다. 커서가 단어의 시작 부분에 있으면 이전 단어를 삭제합니다.
Ctrl-ykill-ring에서 텍스트를 가져와서 커서 위치에 삽입합니다.

Completion (완성)

completion 메커니즘 이용 : <tab 키> 이용

사용 가능한 완성의 종류

  • 경로명
  • 변수(단어의 시작이 $)
  • 사용자 이름(단어의 시작이 ~)
  • 명령(단어가 줄의 첫번째 단어)
  • 호스트명(단어의 시작이 @ : /etc/hosts에 있는 호스트명에 대해서만!)
 키  동작
Alt-?가능한 완성 목록을 표시합니다. 대부분의 시스템에서는 Tab 키를 한 번 더 누르면 훨씬 쉽게 이 작업을 수행할 수 있습니다.
Alt-*가능한 모든 완성을 표시합니다. 이 기능은 두 개 이상의 가능한 일치를 사용하려는 경우에 유용합니다.

Using History (히스토리 사용)

홈 디렉토리의 .bash_history 파일에 최근 500 또는 1000개의 입력 명령 히스토리 유지

  • Searching History
[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 목록의 명령 줄 번호


  • history 목록 조작 입력
   키     동작
Ctrl-p이전 히스토리 항목으로 이동합니다. 위쪽 화살표와 동일한 동작입니다.
Ctrl-n다음 히스토리 항목으로 이동합니다. 아래쪽 화살표와 같은 동작입니다.
Alt-<히스토리 목록의 시작(상단)으로 이동합니다.
Alt->히스토리 목록의 끝(하단), 즉 현재 커맨드라인로 이동합니다.
Ctrl-r역방향 검색. 현재 커맨드라인에서 히스토리 목록 위로 자동 순차 검색합니다.
Alt-p역방향 수동 순차 검색. 이 키를 사용하여 검색 문자열을 입력하고 Enter 키를 누르면 검색이 수행됩니다.
Alt-n정방향 수동 순차 검색.
Ctrl-o히스토리 목록에서 현재 항목을 실행하고 다음 항목으로 이동합니다. 이 기능은 히스토리 목록에서 일련의 명령을 다시 실행하려고 할 때 유용합니다.
  • history 확장

셸은 ! 문자를 사용해 히스토리 목록의 항목에 대한 특수한 타입의 확장 제공

입력동작
!!마지막 명령을 반복
!number히스토리 목록 항목 number 를 반복
!stringstring으로 시작하는 마지막 히스토리 목록 항목을 반복
!?stringstring이 포함된 마지막 히스토리 목록 항목을 반복
profile
Hi I'm 열쯔엉

0개의 댓글

관련 채용 정보