완성 제안에서 특정 결과를 선택하십시오


10

특정 디렉토리에 3 개의 파일이 있다고 가정 해 봅시다. abc.txt, aww.txt, ant.txt

내가하면 : cat a(그리고 옵션을 보려면 탭을 누르십시오) 터미널은 3 개의 파일 이름을 표시합니다 :abc.txt, aww.txt, ant.txt

터미널이 표시 한 결과에 색인 번호를 지정하여 입력하는 대신 n 번째 결과를 선택할 수있는 방법이 있습니까?

같은 것 : cat a2두 번째 파일 ( aww.txt) 을 얻으려면 ?


내가 아는 것은 아닙니다. Zsh에서는 TAB을 여러 번 치는 모든 가능한 완료를 반복 할 수 있습니다 (예 : TAB을 4 번 치는 것은 완료 됨 ant.txt). 더 나은 탐색을 위해 뒤로 반복 할 수 있도록 설정할 수도 있습니다. 그것은 분명히 쉘을 Zsh로 변경하는 것을 의미합니다. 당신이 그것을 충분히 대안으로 생각한다면 나는 그것에 대한 답을 쓸 수 있습니다.
kos December

답변:


11

bash를 사용한다고 가정하면 다음을 추가하십시오 ~/.bashrc.

bind '"\e[6~": menu-complete'
bind '"\e[5~": menu-complete-backward'

또는 bash뿐만 아니라 readline complete 라이브러리를 사용하는 모든 프로그램의 기본값을 변경하려면 다음을 ~/.inputrc포함 하는 파일 을 작성하십시오 .

$include /etc/inputrc
"\e[6~": menu-complete
"\e[5~": menu-complete-backward

이제 새 터미널을 열면 다음을 누를 수 있습니다.

  • TAB 가능한 완성을보기 위해 정상적으로.
  • Pg Dn 첫 번째 완료를 선택하거나 다음 완료로 변경하십시오.
  • Pg Up 마지막 완료를 선택하거나 이전 완료로 변경합니다.
  • Altn Pg Dnn 완료를 선택하거나 n 완료를 앞으로 이동하려면 + n

예를 들어 Pg DnPg Dn또는 Alt+ 2Pg Dn를 입력 하여 두 번째 파일을 가져옵니다 aww.txt.


cd디렉토리를 사용 하고 순환 한다고 가정 해 봅시다 . 해당 디렉토리를 "선택"하고 해당 디렉토리의 내용을 순환하기 위해 어떤 키를 누르십니까? 설정 / 바인드 할 다른 것이 있습니까?
Tony

당신이 키보드의 홈 행에서 너무 멀리 손을 이동하지 않으려면 대안은,를 통해 수행 할 수 있습니다 Ctrl + Alt + 대신에 페이지 업 및 Ctrl + Alt + N의 P 대신 PageDown 키, 사용하는 것입니다 bind '"\e\20": menu-complete-backward'bind '"\e\16": menu-complete' .
Ruslan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.