在trap <cmd> EXIT
下启动bash脚本时,有没有办法让screen
正常工作?
考虑简单的脚本:
#!/bin/bash
onexit () {
echo 'I is ded.'
}
trap onexit EXIT
sleep 30
如果在正常的bash会话下启动,如果按Ctrl + C,则执行陷阱。
如果我先启动screen
,然后执行上面的bash脚本然后按Ctrl + C,则不会执行陷阱。但是,我看到'我是ded'。退出屏幕会话后显示字符串。
如果脚本正在等待命令,我确实读过关于陷阱没有执行的人,但是我没想到屏幕会弄乱它。