【发布时间】:2020-05-11 16:18:40
【问题描述】:
我无法让 Zshell 脚本中的陷阱函数在不退出 shell 的情况下工作。我有一个简单的倒数计时器,我希望能够使用 ^C 中断它,并且当我这样做时,我希望陷阱改变终端中的光标状态。
我的语法是:
#!/bin/zsh
trap 'tput cnorm; exit' INT TERM
我也试过了:
trap 'tput cnorm; kill -9 $$' INT TERM
两个中断都完全退出 shell。如何只退出脚本并返回命令行?
任何指导将不胜感激!
【问题讨论】:
-
您是在采购脚本还是在单独的进程中执行它?
-
我在进行更改时采购它,但一旦它工作,它将作为一个函数自动加载,以便在交互式 shell 中使用。
-
您是否尝试捕捉
EXIT信号? -
如何赶上退出?你的意思是?它作为一个可执行文件工作,但我想将它作为一个函数自动加载到我的环境中。我的其他函数脚本都不是可执行的。
标签: shell command-line scripting zsh