내 ~/.inputrc
, 나는 시도 C-x C-c
하고 bind -f ~/.inputrc
. 의 man bash 섹션을 읽은 후에도 아이디어가 없습니다 bind
.
내가 가진 "\C-Rubout": backward-kill-word
내에서 ~/.inputrc
. 하지만 bash를 사용하여 bash를 쿼리 할 때 bind -q backward-kill-word
예상되는 출력을 얻지 못합니다.
$ bind -q backward-kill-word
backward-kill-word can be invoked via "\C-rubout", "\e\C-h", "\e\C-?".
잘못된 대소 문자가 문제라고 생각 rubout
하지만 ~/.inputrc
, 파일을 어떻게 변경해도 작동하지 않습니다 !!
나는 bind
배쉬 부분 에서 무능력 해지는 법을 배우는 데 도움이되는 좋은 자료를 찾기 위해 고군분투하고 있습니다 . 결과는 잘못된 것 같습니다.하지만 더 많이 알 때까지 그것에 대해 확신하는 것보다 더 잘 압니다. 이런 것.
나는 통해 읽은 GNU 매뉴얼 및 사용하여 시도 \b
, \d
그리고 \177
대신에 Rubout
, 그러나 그 중 어느 것도 작동하지 않습니다. gnu 매뉴얼 ( 여기 )에있는 것은 꽤 깔끔했습니다.
기본 바인딩은 터미널에 존재하지 않았다. 내가 추가 할 필요 "\C-x\C-r": re-read-init-file
내에 ~/.inputrc
.
init 파일을 다시 읽어도 현재 바인딩 된 명령이 사라지지는 않습니다 . 내 ~/.inputrc
전화 에서 줄을 삭제하면 bind -f ~/.inputrc
바인딩이 해제 된다고 가정하는 것은 잘못되었습니다 . 따라서이 명령은 실제로 내 init 파일을 다시 읽는 작업을 수행합니다.
문제를 제대로 해결하지 못했습니다. 기본이 작동하지 않았기 때문에 모든 지식이 흔들 렸습니다. 나는 내 readline 파일을 재 소싱하지 않고 다시 읽고 있었다. 이것이 주요 차이점입니다.
또한 동일한 파일에서 명령을 여러 번 바인딩하는 것은 마지막 정의를 제외한 모든 것을 삭제하는 것처럼 보입니다. 문제 해결과 관련된 모든 문제로 인해 포기했습니다.
마지막으로, 나는 모두가 있다는 것을 몰랐다 unix-word-rubout
및 backward-kill-word
. 두 개의 별개 명령이지만 터미널에서 동일하게 작동합니다.
delete
삭제해야하는 명령을보고 표현하는 방법을 알아낼 수 있다는 것을 깨달았습니다 . :
$ bind -q backward-kill-word
backward-kill-word can be invoked via "\e\C-h", "\e\C-?".
내 터미널 은 다른 터미널과 다르게 삭제를 변환합니다. 내 생각에 ... ?
"나는 이것을 표현할 수 없습니다"의 자리 표시 자라고 생각 했지만 그것은 �
! 나는 정말로 리터럴 ?
, ASCII 코드 63 을 사용해야했습니다 .
내가 배치 할 때 어쨌든 "\C-?": unix-word-rubout
내에서 ~/.inputrc
, 모든 것이 완벽하게 작동 :)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다