Bash: 커서를 한 번에 한 단어씩 왼쪽으로 이동하는 방법은 무엇입니까?

Bash: 커서를 한 번에 한 단어씩 왼쪽으로 이동하는 방법은 무엇입니까?

optionOSX에서는 편집해야 하는 단어에 도달할 때까지 왼쪽 커서 키를 길게 누를 수 있습니다 (또는 Vi에서는 을 클릭할 수 있지만 b터미널에서 이 작업을 수행하는 방법을 알 수 없습니다).

답변1

Ctrl키 바인딩을 설정하려면 먼저 + 키 시퀀스가 ​​생성하는 키 코드를 찾아야 합니다 Left. 이 명령을 사용하여 cat기존 키 바인딩에 대한 간섭을 끄고 키 시퀀스를 입력하기만 하면 됩니다. 내 시스템(Linux)에서는 다음과 같습니다.

$ cat
^[[1;5D

고양이를 종료하려면 Ctrl+를 누르세요 . d이제 Ctrl-Left가 6개의 키 코드를 생성한다는 것을 발견했습니다.

  • 탈출(^[)
  • [
  • 1
  • ;
  • 5

이제 바인딩 명령을 실행할 수 있습니다.

bind '"\e[1;5D": backward-word'

답변2

원하는 bash 함수는 입니다 backward-word. bind -q backward-word함수에 바인딩된 키 목록을 가져오려면 . 일반적인 바인딩은 Esc+b

또한 많은 터미널 에서 Ctrl+를 지원합니다 Left(X에서 동일한 단축키를 사용하여 단어 단위로 뒤로 이동할 수 있음).

답변3

Bash의 기본 단축키 는 + backword-word입니다 . + 를 사용해 도 동일한 결과를 얻을 수 있습니다 . 키 바인딩을 편집하기 전에 이 작업을 시도해야 합니다.AltbEscb

명령을 사용하여 특정 작업에 대한 현재 키 바인딩을 bind편집하거나 가져옵니다.bind -q [name]

관련 정보