인수 없이 마지막 명령 호출

인수 없이 마지막 명령 호출

Bash에서 마지막 명령을 호출하는 단축키는 무엇입니까?아니요어떤 주장이 있습니까?

이것은 내가 찾은 다양한 가이드에서 누락된 바로가기인 것 같습니다.https://linuxconfig.org/linux-command-line-bash-shell-shortcuts

제공하려는 새 인수를 입력할 수 있도록 마지막 명령이 줄 끝에 커서가 있는 상태로 명령줄에 나타나기를 원합니다.

CTRL또한 + 와 같은 단축키 조합을 통해 이 작업을 수행하고 싶습니다.P

!:0새 매개변수를 입력할 기회를 주지 않고 실제로 명령을 실행하기 때문에 작동하지 않습니다.

Meta+ Ctrl+ ebash에서는 어떤 결과도 생성할 수 없습니다. 그러나 다음은 \e다음을 참조한다고 가정하여 작동해야 함을 보여줍니다.Alt

bind -P | grep shell-expand-line
shell-expand-line can be found on "\e\C-e".

나는 Archie를 운영하고 있습니다.

답변1

패턴 내에서 bash또는 패턴 zsh내에서 ++ 를 emacs사용할 수 있습니다 . 즉, 키를 누른 상태에서 0을 누르고 순서대로 밑줄을 긋습니다(쿼티 키보드에서는 밑줄이 필요하지만 서로 옆에 있습니다 ).Alt0Alt_AltShift

이전 명령줄의 첫 번째 문법 단어로 확장됩니다. 이게 마지막 주문이 아닐 수도 있어요. 예를 들어, 마지막 명령줄이 다음과 같은 경우:

$(echo echo foo) bar

$(echo echo foo)대신 으로 확장됩니다 echo.

단일 키가 되도록 하려면 bindin bash또는 bindkeyin을 사용하여 zsh시퀀스를 키에 바인딩할 수 있습니다.

예를 들어 다음과 같이 바인딩합니다 F12.

  • bash:

    bind "\"$(tput kf12)"'": "\e0\e_"'
    
  • zsh:

    bindkey -s $terminfo[kf12] '\e0\e_'
    

관련 정보