bash에서 이전 / 다음 단어 바로 가기를 변경하는 방법은 무엇입니까?


답변:


26

정답은 사용중인 터미널에 따라 다릅니다.

그놈 터미널 또는 최신 버전의 xterm의 경우 ~ / .inputrc에 넣으십시오.

"\e[1;5C": forward-word
"\e[1;5D": backward-word

PuTTY의 경우 ~ / .inputrc에 넣으십시오.

"\eOC": forward-word
"\eOD": backward-word

rxvt의 경우 이것을 ~ / .inputrc에 넣으십시오.

"\eOc": forward-word
"\eOd": backward-word

~ / .inputrc에 모든 것들을 모아서 벗어날 수 있습니다.

모든 경우에 이것을 ~ / .bashrc (또는 ~ / .zshrc)에도 넣어야합니다.

export INPUTRC=~/.inputrc

그래도 작동하지 않거나 다른 터미널이있는 경우 터미널로 이동하여 Ctrl+ V Ctrl+를 입력하십시오 ->. 그리고 대신의를 사용 "\e[1;5C"하거나 "\eOC"위. Ctrl+ 반복하십시오 <-.

참고는 사용하여 키보드 이스케이프 시퀀스를 작성해야한다는 INPUTRC 구문을 , 예를

  • \C 제어 수단
  • \e이스케이프를 의미합니다 ( ^[위의 Ctrl + V를 사용하여 입력 할 때 나타남 )

Ctrl + V, Ctrl->는 "^ [[1; 5C" "를 인쇄하는데 그놈 터미널을 사용하고 있습니다.
ripper234

2
시도해보십시오 "\e[1;5C": forward-word. 그리고 할 Ctrl+에 V대한 일을 Ctrl+ Left Arrow너무.
Mikel

고마워, 매력처럼 작동합니다. 천천히 그러나 확실하게, 나는 리눅스에서 수영하는 법을 배울 것이다. 왜 처음부터 그렇게 직관적이지 않게 만들어야 했습니까? (ctrl-left, ctrl-right가 더 나은 선택임을 인정해야합니다)
ripper234

1
Linux가 직관적이지 않다고 생각되면 FreeBSD 또는 Solaris의 기본 설치를 시도하십시오. 쉘을 시작 쉘로 사용하는 것은 꿈입니다. 또한 키보드에는 항상 화살표 키가 없으므로 Emacs가 있으므로 bash는 바로 가기를 지원합니다. 잠시 동안 Ctrl-b 및 Ctrl-f를 사용해보십시오.
penguin359

2
UNIX / Linux 시스템의 장점은 설정을 쉽게 이동할 수 있다는 것입니다. 좋아하는 프로그램이 원하는 방식으로 구성되면 복사하십시오. 실제로 .inputrc, .bashrc, .vimrc 등과 같은 홈 디렉토리 파일에 버전 제어를 사용하고 있습니다. 수은을 사용하여 컴퓨터간에 모든 홈 디렉토리 설정을 복제하고 최신 상태로 유지합니다. 또한 어느 시점에서 다른 사람들이 내 모든 노력을 공유 할 수 있도록 레포지를 게시 할 계획입니다.
penguin359

3

ZSH 를 사용하는 경우 ArchLinux의 ZSH 안내서 에서 관련 파트를 인용하므로 다른 방법을 사용해야합니다 .

Zsh는 bash #와 같은 # readline을 사용하지 않고 자체적이고 강력한 zle을 사용합니다.

/ etc / inputrc 또는 ~ / .inputrc를 읽지 않습니다.

이 가이드를 읽은 후에는이 작업을 수행하는 방법에 대한 일반적인 아이디어를 얻으려면 ZSH의 모 든 소스가 필요하다고 생각했기 때문에 원하는 동작을 설명하는 이 oh-my-zsh 파일 을 찾았 습니다. ~ / .zshrc에 원했습니다.

bindkey -e #Use emacs mode, it's more sane for beginners
bindkey '^[[1;5C' forward-word # [Ctrl-RightArrow] - move forward one word
bindkey '^[[1;5D' backward-word # [Ctrl-LeftArrow] - move backward one word
# Also, If you want to copy paste this into your zshrc,
# I'm pretty sure you would have to add this at the top : 
# setopt interactive_comments

나는 Ctrl +
오른쪽 화살표를
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.