![oh-my-zsh의 위쪽 화살표 명령 기록은 해당 명령의 옵션/인수로 범위를 좁힐 수 있습니다.](https://linux55.com/image/72590/oh-my-zsh%EC%9D%98%20%EC%9C%84%EC%AA%BD%20%ED%99%94%EC%82%B4%ED%91%9C%20%EB%AA%85%EB%A0%B9%20%EA%B8%B0%EB%A1%9D%EC%9D%80%20%ED%95%B4%EB%8B%B9%20%EB%AA%85%EB%A0%B9%EC%9D%98%20%EC%98%B5%EC%85%98%2F%EC%9D%B8%EC%88%98%EB%A1%9C%20%EB%B2%94%EC%9C%84%EB%A5%BC%20%EC%A2%81%ED%9E%90%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
제가 질문을 잘 표현했는지는 잘 모르겠지만, 한 가지 예가 천 마디 말만큼 가치가 있습니다. 예를 들어 oh-my-zsh를 사용하면 다음과 같습니다.
git <up arrow>
git
내가 사용한 모든 명령을 순환하게 됩니다 ...
git rebase brancha
git commit foo
git rebase branchb
etc
이 기록을 주어진 두 번째/세 번째 단어로 제한하는 방법이 있습니까? 예를 들어.
git rebase <up arrow>
git rebase
다음 명령을 반복해 보세요 .
git rebase brancha
git rebase branchb
답변1
당신은 zle 위젯을 찾고 있습니다history-beginning-search-backward
, 기본적으로 키에 바인딩되지 않습니다.
Ctrl이 명령을 +(및 Up+의 대칭 명령) 와 같은 키에 바인딩할 수 있습니다 . +와 같은 키 입력은 다른 터미널에서 다른 이스케이프 시퀀스를 전송하므로 + +를 입력하여 보내는 내용을 확인하세요. 이스케이프 문자(대부분의 터미널에 표시됨)를 나타내며 모든 이스케이프 시퀀스 문자 중 첫 번째입니다.CtrlDownCtrlUpCtrlV CtrlUp\e
^[
bindkey '\e[1;5A' history-beginning-search-backward
bindkey '\e[1;5B' history-beginning-search-forward