我想在有人登录prod系统时将配色方案更改为红色。我通过查询prod服务器的中央存储库并更新.kshrc来实现这一点 -
主机= hostname
...
...
if [[$ env = 1]] 然后 tput setaf 7 tput setab 1 明确 其他 tput setaf 7 tput setab 4 明确 网络
当我远程登录prod然后再次远程登录到另一个非prod时,这工作正常。但问题是当我例如从非prod登录到prod系统时,颜色方案变为预期的红色,但是,如果我使用ctrl + d注销颜色方案,即使我现在已经记录,颜色方案也不会改变在非生产系统中。关于SIGQUIT(ctrl + d)如何被捕获并用于颜色变化的任何建议?
答案 0 :(得分:-2)
我会尝试重新解释我的回答,因为人们在这里感到困惑......
所以我的建议是使用trap命令来捕获信号然后做你想做的事情。 trap命令的语法是
trap" command1;命令2;指令代码3" signal1 signal2(你可以在同一行捕获更多信号)
如果诱捕SIGQUIT不起作用,请检查您的终端是否确实在Ctrl + d上发送了SIGQUIT
一些有用的链接是:
http://www.tutorialspoint.com/unix/unix-signals-traps.htm
http://www.ibm.com/developerworks/aix/library/au-usingtraps/