Always keep a begin|

三点一圆

园龄:8年7个月粉丝:1关注:8

2022-10-10 13:38阅读: 725评论: 0推荐: 0

jenkins忽略shell步骤中的报错

参考文档:https://cloud.tencent.com/developer/article/1651559
使用jenkins定时杀掉进程,当进程不存在时需要忽略报错。

记录一下jenkins忽略shell步骤中报错的方法

忽略执行错误

在末尾加上参数|| true

ls aaa || true 

构建结果:

当错误时执行其他指令

ls aaa || error=true
if [ $error ]
then 
  echo "有错误"
fi

构建结果:

使用set +e

set +e
ls aaa
echo "执行完毕"

构建结果:

如果指令报错,但后面没有其他指令会报错:

set +e
ls aaa

构建结果:

可使用2>output.log将指令错误输出写到文件中。
同样的,不换行后续没指令也会报错,但文件能写入成功:

set +e
ls aaa 2>output.log

构建结果:

如果想要不报错,在后面加上其他指令即可:

set +e
ls aaa 2>output.log
echo "执行完毕"


加上2>output.log会将错误输出写入文件,错误内容不会在输出中打印与使用set +e有所区别

不能直接使用2>output.log处理错误

这样jenkins也会报错,但文件能写入成功

ls aaa 2>/dev/null


本文作者:三点一圆

本文链接:https://www.cnblogs.com/sandianyiyuan/p/16775404.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   三点一圆  阅读(725)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起