我正在通过詹金斯执行Windows蝙蝠脚本。 批处理文件正在提供所需的输出,但是构建失败。我的批处理文件是..

cd /d D:\\Bank\\Member\\ID

if %errorlevel% neq 0 exit /b %errorlevel%

mkdir OTP

if %errorlevel% neq 0 exit /b %errorlevel%

robocopy C:\Corporate D:\\Bank\\Member\\ID\ /E /XF  *.bat

if %errorlevel% neq 1 exit /b %errorlevel%

cd /d D:\\Bank\\Staff\\ID

成功复制文件后,机器人将给出退出代码1。

但是,牛仔裤无法正常工作并出现以下错误:

Build step 'Execute Windows batch command' marked build as failure

Finished: FAILURE

如果robocopy退出代码1,我希望构建成功。

我最好的建议是使用jenkins-pipeline,try / catch块,并尽可能少地使用bat命令(或者根本不使用)。

但考虑到您的情况,也有一个简单的解决方案:只需将字段" ERRORLEVEL以将构建不稳定设置为"设置为1(或其他合适的数字)。如果单击"执行Windows批处理命令"块下的"高级"按钮,则会显示该字段:

此方法会将您的构建检查为"不稳定",但将继续执行。

我不想让构建失败。詹金斯成功执行了bat文件,但最后将构建标记为失败... @ n01d

它将在退出代码1上将构建标记为"不稳定",而不是"失败"。

请按以下方式使用以避免:

bat"robocopy /s source dest & EXIT /B 0"

即使robocopy返回非零错误级别,以上内容仍将继续jenkins构建。即使成功复制后,Robocopy也不会由于各种原因返回0,因为它比较了两个文件夹。请查询返回码以了解更多详细信息

如此处所述,要检查的第一个条件是用于运行Jenkins的帐户。

键入services.msc以打开Windows服务并查找Jenkins服务。

而不是"本地服务帐户",请使用您自己的帐户:这将避免任何正确的问题。

但是:其他标准是显示错误代码。

如此处所述:

All exit codes up to '3' are fine.

因此,在robocopy之后,您可以添加:

@echo robocopy exit code: %ERRORLEVEL%

@if %ERRORLEVEL% GTR 3 ( echo robocopy ERROR )

@if %ERRORLEVEL% GTR 3 ( exit %ERRORLEVEL% )

@set ERRORLEVEL=0

REM at the end:

exit /b 0

即使robocopy的原始错误级别为1,这也可以确保Jenkins不会使批处理步骤失败。

我已经尝试过了,但是无法正常工作。我收到与问题... @ VonC相同的错误消息

@ rohit.dagur您是否尝试检查错误级别并将其设置为0?

是的...我确实检查了它并设置了它,但是我的结果却是一样.. @ VonC

@ rohit.dagur您可以在脚本的结尾添加exit b 0吗?

jenkins执行bat失败_关于批处理文件:即使在BAT脚本中成功执行了ROBOCOPY命令,JENKINS作业也会失败...相关推荐

  1. java执行sql文件_面试官问你MyBatis SQL是如何执行的?把这篇文章甩给他

    初识 MyBatis MyBatis 是第一个支持自定义 SQL.存储过程和高级映射的类持久框架.MyBatis 消除了大部分 JDBC 的样板代码.手动设置参数以及检索结果.MyBatis 能够支持 ...

  2. java 执行字节码_深入理解java:1.2. 字节码执行引擎

    执行引擎是Java虚拟机的核心组成部分之一. 首先,想想C++和Java在编译和运行时到底有啥不一样? 下图左边,C++发布的就是机器指令, 而下图右边Java发布的是字节码,字节码在运行时通过JVM ...

  3. Linux下rcS文件中sleep用法,对busybox工具rcS脚本中exec执行﹑后台执行和nohup执行的理解...

    因为/etc/init.d/rcS脚本在/etc/inittab中以最高优先级第一个被init程序解析并使用daemon方式启动, ::sysinit:/etc/init.d/rcS 所以这样rcS脚 ...

  4. shell脚本中等待上一条命令执行结束在执行下一条。

    首先了解下背景知识. 命令生效顺序 Linux系统下命令生效的顺序有以下4条: 绝对路径或相对执行的命令: 别名: Bash的内部命令: 按照$PATH环境变量定义的目录查找顺序搜到的第一个命令. 实 ...

  5. shell 脚本中获取执行系统命令的输出结果

    这个主要介绍的方法是获取命令的输出内容,而不是命令执行成功与否的返回值. 通常情况下,在shell脚本中需要获取命令的输出内容,然后根据输出内容判断下一步的执行操作. 比较常用的一种方式就是, 匹配命 ...

  6. shell脚本中的执行流控制

    执行流就是执行顺序 shell中默认执行顺序是从上到下依次执行 for语句 作用:为循环执行动作 for语句结构 for        定义变量 do        使用变量,执行动作 done    ...

  7. php定时执行代码漏洞_【漏洞风险提示】Drupal任意PHP代码执行漏洞通告

    漏洞描述 Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成. 2020年11月25日,Drupal发布了Drupa ...

  8. fastjson jsonobject 转bean失败_烫发以后丑的不行?张柏芝、范冰冰、Angelababy也经历过的失败烫发造型回顾-非主流发型-发型站...

    导读:女明星要出席不同的活动,比起我们所尝试过的发型更多,不只发质变差,以下这些烫发造型似乎都令人大跌眼镜,即使是以下这些颜值甚高的女星,配上奇特的失败烫发造型也实是惨不忍睹. 女人五时花六时变,又岂 ...

  9. mybatisplus执行sql语句_一条更新的SQL语句是如何执行的?

    提出问题 UPDATE student SET score = score + 1 WHERE uid = 666; 以上就是一条最简单的SQL更新语句,想要知道上面这句SQL语句是怎么执行的先要了解 ...

最新文章

  1. 转载:QTableView中嵌入可视化组件
  2. iOS 调用h5页面 视频不自动播放的问题
  3. Chrome开发者工具network标签页里的transferred over network和resources loaded by the page的区别
  4. java安全增加url_规范化String以在Java中创建安全URL
  5. [转]vue-codemirror 代码编辑器
  6. 跟面试官侃了半小时 MySQL 事务,把原子性、一致性、持久性的实现都讲完了
  7. 61 SD配置-科目分配-分配税收确定的交货工厂
  8. 85、android handler的警告Handler Class Should be Static or Leaks Occur
  9. Java 获取系统信息
  10. 第一章节 c#面向对象
  11. QFIL的烧录、读写
  12. word域代码 乱序
  13. JS new一个对象的过程
  14. matlab海洋数值模拟,海洋数值模拟课程教学大纲.PDF
  15. 关于数学基础的研究现状
  16. 不小心按到了键盘,导致输入的英文字母间距很大,该怎么解决
  17. 【李开复】成功、自信、快乐(三)
  18. 易启秀20150629完整包微场景制作源码,新增1.4G素材包,全新后台UI设计+采集
  19. 玩 High API 系列好文(一):智能客服、钉钉Ding功能、智能云相册、快速实现身份验证
  20. android annotations

热门文章

  1. c++ using 前置声明_每日优鲜前置仓模式的配货优化方案案例介绍
  2. linux centos/redhat mysql8.0安装(汇总贴)
  3. Java 深copy 浅copy 引用copy
  4. Easyui笔记:jquery执行append后input的验证失效解决方案
  5. 关于计算机网络的未来综述,计算机网络综述
  6. 微服务架构与组件总览
  7. android edittext禁止输入特殊字符,Android EditText禁止输入空格和特殊字符
  8. c语言占用cpu的程序,Windows下用C语言获取进程cpu使用率,内存使用,IO情况
  9. mysql 字符串类型 小数_在Mysql中,小数数据类型是指由字符串来表示的数字。(  )...
  10. 5g存储服务器是什么项目,5G时代对服务器有什么要求?