Ctrl-z 会暂停前台进程,但当前台没有任何内容时,它不起作用。我想重载 ctrl-z,这样当前台没有任何内容时,它会恢复最近暂停的进程。这样,按 ctrl-z 即可切换前台进程。你会怎么做?
顺便说一句,我使用 zsh,但任何在 bash 中工作的东西都应该也可以工作。我在 OS X 上的终端上
答案1
ctrlz () {
if [[ $#BUFFER -eq 0 ]]; then
fg
zle redisplay
else
zle push-input
fi
}
zle -N ctrlz
bindkey '^Z' ctrlz