Jenkins Freestyle项目控制台无法显示Shell命令输出求助
Jenkins构建成功但无echo输出的解决办法
问题原因
你的Jenkins运行在Windows系统上,Execute Shell是为类Unix系统(Linux/macOS)设计的构建步骤。Windows下Jenkins会调用cmd.exe执行.sh后缀的临时脚本,但这种方式无法正确解析执行脚本内的命令,导致命令没运行就直接结束构建。
解决方案
- 进入Freestyle项目的配置页面,删除原有的Execute Shell构建步骤
- 添加Execute Windows batch command构建步骤
- 在命令输入框中填入:
echo "Hello world" - 保存配置后重新触发构建,控制台就会正常输出
Hello world内容
补充说明
如果一定要使用Execute Shell步骤,需在Windows上安装Git Bash或WSL等bash环境,然后在Jenkins全局配置中,将「Shell executable」路径设置为bash的安装路径(例如C:\Program Files\Git\bin\bash.exe),但这种方式不如直接使用Windows批处理步骤简便。
原控制台输出
Started by user Syed Ahmed Haider Razvi Running as SYSTEM Building in workspace C:\ProgramData\Jenkins\.jenkins\workspace\testing [testing] $ C:\Windows\system32\cmd.exe -xe C:\WINDOWS\TEMP\jenkins3566058751622145544.sh Microsoft Windows [Version 10.0.19045.3086] (c) Microsoft Corporation. All rights reserved. C:\ProgramData\Jenkins\.jenkins\workspace\testing>Finished: SUCCESS
内容的提问来源于stack exchange,提问作者Syed Ahmed Haider Razvi
相关产品推荐
相关产品推荐

