我有一些脚本.bash_logout
存档。当用户使用Ctrl+d或使用exit
命令注销时,该脚本就会运行。如果有人直接关闭 putty 应用程序而不是从系统中注销,则.bash_logout
不会运行。
任何人都可以帮助我如何运行,.bash_logout
即使有人关闭腻子应用程序而不从系统注销?
答案1
在 .bashrc 中添加了以下函数和陷阱。exit_session
当 shell 收到SIGHUP
信号时,陷阱将触发该函数。
exit_session() {
. "$HOME/.bash_logout"
}
trap exit_session SIGHUP
答案2
做不到。仅使用、或+.bash_logout
来执行内容,意味着显式退出 shell。如果关闭终端模拟器,则会发送进程,并且 bash 不会运行。exit
logout
CtrldSIGHUP
~/.bash_logout
当登录 shell 退出时,
bash
从文件~/.bash_logout
和中读取并执行命令/etc/bash.bash_logout
(如果文件存在)。
你能做的最好的就是适应这个解决方案将脚本与trap
命令映射。