解决Jenkins 运行shell脚本是报错,/bin/sh: line 1: allure: command not found

解决Jenkins 运行shell脚本是报错,/bin/sh: line 1: allure: command not found

本地执行shell命令成功,Jenkins 远程执行 shell命令有时 提示命令找不到,或者make的时候报错。

因为Jenkins执行shell时无法获取环境变量的原因导致

解决办法在shell脚本上加上环境变量如:

复制代码
#!/bin/bash
source ~/.bash_profile
source /etc/profile

在shell脚本里面添加了后,Jenkins就能正常的运行shell脚本;

第二种解决办法:

本机shell命令可以执行,jenkins任务中无法执行,则是jenkins没有加载/etc/profile导致,需要在jenkins调用shell脚本的最前面加一行脚本,#!/bin/bash -ilex,可以通过-i参数和-l参数让bash为login shell and interactive shell,就可以读取/etc/profile和~/.bash_profile等文件

shell脚本:

#!/bin/bash -ilex

相关推荐
小安运维日记15 分钟前
RHCA - DO374 | Day01:使用红帽Ansible自动化平台开发剧本
运维·服务器·云原生·自动化·云计算·ansible
刘岩Tony37 分钟前
ssh别名和多服务器同步文件
运维·服务器·ssh
zzy208874027137 分钟前
自定义服务器实现时间同步
运维·服务器
LXY_BUAA40 分钟前
在电脑中安装双系统(win11 + linux)20251019
linux·运维·服务器
小蜗快跑丶2 小时前
内网构建https
运维·服务器
做运维的阿瑞3 小时前
DevOps 生命周期完全指南
运维·容器·devops
BullSmall3 小时前
Ansible三大Web界面方案全解析
运维·ansible
东城绝神3 小时前
《Linux运维总结:基于ARM64+X86_64架构CPU使用docker-compose一键离线部署mongodb 7.0.22容器版分片集群》
linux·运维·mongodb·架构·分片集群
Akamai中国3 小时前
运维逆袭志·第4期 | 安全风暴的绝地反击 :从告警地狱到智能防护
运维·人工智能·云计算·云服务·云存储
塔能物联运维4 小时前
物联网运维中的容器化服务部署与弹性扩展技术
运维·物联网