때로는 셸에서 cmd를 역검색할 때 정확한 일치 항목을 찾을 수 없고 검색 쿼리를 있는 그대로 실행하고 싶을 때도 있습니다.
bash/zsh와 친구들이 입력을 버리지 않고 이를 실행할 수 있는 방법이 있나요?
답변1
zsh에서는 변수를 사용할 수 있습니다LASTSEARCH
그리고LASTABORTEDSEARCH
. 편집기 위젯 내에서만 사용할 수 있습니다.
에디터 위젯은 에디터 위젯으로 만들어진 기능으로,zle -N
이는 키바인딩을 통해 호출됩니다. (키 바인딩은 다음과 같습니다.ESC-x
—vi :
모드에서. )
예를 들어 다음 코드 바인딩은 ESC-s
현재 명령줄을 마지막 증분 검색으로 바꿉니다. 증분 검색 중 키를 누르면 ESC-s
검색이 진행 중입니다(중단됩니다).
function set-buffer-last-search { LBUFFER=$LASTSEARCH; RBUFFER=; }
zle -N set-buffer-last-search
bindkey '\es' set-buffer-last-search