1
我正在使用linux屏幕配置复杂的jenkins作业。要创建一个新的屏幕,我跑:Linux屏幕 - 只有当它存在时才会被杀死(jenkins作业)
screen -md -S jenkins_job
然后去一些其他的工作,终于摧毁现有的屏幕,我跑:
screen -S jenkins_job -X quit
但它可能在詹金斯发生脚本将某处失败插图中和立即放弃。然后屏幕终止命令将不会执行,屏幕将保持活动状态。所以在开始工作时我想确保所有屏幕都被破坏。如果我在不存在的作业上使用screen -S jenkins_job -X quit
,那么shell将返回错误代码,并且jenkins脚本也会失败。
有没有办法有条件地销毁一个屏幕(即销毁屏幕,如果它存在,否则什么也不做)?
我跑在作业开始时这个陷阱,以确保屏幕会不管破坏什么的整体詹金斯工作结果(QUIT或TERM - 成功或失败) - 是吗? – ducin 2013-02-08 12:05:06
是的。在每个这些信号上,代码都会运行。 – 2013-02-08 12:07:21
我忘记了,如果您还想处理正常终止,请添加'EXIT'信号 – 2013-02-08 12:11:53