Bash 별칭에서 키보드 단축키를 에뮬레이트하는 방법은 무엇입니까?

Bash 별칭에서 키보드 단축키를 에뮬레이트하는 방법은 무엇입니까?

예를 들어 내 bash 별칭 중 하나는 다음과 같습니다.

alias p='clear;ls -lt;pwd;'

clear원하지 않는 기록도 삭제했습니다. 일시적으로 화면을 지우고 싶습니다.

Ctrl+ L하지만 정확히 내가 원했던 것입니다. 내 별칭에서 어떻게 사용할 수 있나요?

답변1

clear기록과 터미널이 지워지는 경우 이를 수행하는 함수, 별칭 또는 스크립트가 있어야 합니다. 그것이 type -a clear당신에게 무엇을 말해주는지 보십시오.

터미널을 정리하는 또 다른 방법은 터미널을 사용하여 tput clear원래 수행해야 할 작업과 똑같은 작업을 수행하는 것입니다. clear또한 직접 이스케이프 시퀀스(예: xterm)를 사용하여 이 작업을 수행할 수도 있지만 이는 터미널마다 다를 수 있습니다(gnome-terminal, PuTTY 등과 같이 xterm을 에뮬레이트하는 모든 터미널에서 작동해야 함).printf '\e[H\e[2J'

답변2

당신이 요구하는 것은 일반적으로 bash에서 readline 명령을 실행하는 것입니다 ( zsh 와 동일하거나에서 zle -U $key_sequence) zle $widget $arguments[@]. 내가 아는 한 이것은 bash에서는 불가능합니다.

clear그러나 이 특정한 경우에는 실행 과 입력 Ctrl+L(readline 명령 ) clear-screen사이에 차이가 없습니다 .

관련 정보