어떤 쉘이라도 매개변수 수준의 대화형 검색을 수행할 수 있습니까?

어떤 쉘이라도 매개변수 수준의 대화형 검색을 수행할 수 있습니까?

때로는 경로와 같은 특정 긴 매개변수를 재사용해야 하는 경우도 있습니다.

CTRL기록 검색( + )을 사용하면 R경로가 포함된 일부 명령을 찾을 수 있지만 여전히 이전 명령에서 다른 항목을 삭제한 다음 커서를 이동하여 새 명령을 작성해야 합니다. 더 나쁜 것은 연속해서 여러 번 할 수 없다는 것입니다.

매개변수 수준의 기록 검색을 제공하는 쉘이 있는지 알고 싶습니다.

기록 명령(및 인수)에 대한 탭 완성을 확인하면 어느 정도 도움이 됩니다. 그러나 완성은 하위 문자열이 아닌 입력한 접두사와 일치해야 합니다.

답변1

내가 올바르게 이해했다면 당신은 역동적인 완전한 역사를 추구하고 있는 것입니다(예를 들어 man bash또는http://www.cl.cam.ac.uk/local/sys/unix/applications/bash/), 기본적으로 M-Tab.

답변2

zsh에서는 새로운 스타일 완성이 활성화됩니다( compinit.zshrc:_history_complete_word함수는 이 기능을 제공합니다. 기본적으로 및 에 바인딩된 두 개의 위젯인 및 를 _history-complete-older통해 액세스할 수 있습니다 . 이 두 명령은 현재 단어가 앞에 붙은 쉘 기록의 모든 단어를 반복합니다._history-complete-newerESC ,ESC /

답변3

내 거 끼워 넣다zsh-autocomplete이제 다음을 수행할 수 있습니다.

여기에 이미지 설명을 입력하세요.

보시다시피 를 누른 후 ^R찾고 있는 단어의 일부를 입력할 수 있습니다.

답변4

작동하려면 ALT-를 사용하세요. , bash 맨페이지에서:

- yank-last-arg (M-., M-_):
Insert the last argument to the previous command (the last word of
the previous history entry). With an argument, behave exactly like
yank-nth-arg. Successive calls to yank-last-arg move back through the
history list, inserting the last argument of each line in turn. The
history expansion facilities are used to extract the last argument,
as if the "!$" history expansion had been specified.

관련 정보