解决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

相关推荐
刚入门的大一新生25 分钟前
Linux-进程间通信2
linux·运维·服务器
Yana.nice39 分钟前
清除密码历史记录,解决pam安全策略密码无法复用问题
运维
海宇服务1 小时前
零信任架构实战:基于海宇风控经营异常预警构建自动化央企物资采购供应商资信排查网关
运维·人工智能·架构·自动化
开开心心就好1 小时前
发票信息录入太麻烦?离线工具一键转表格
运维·服务器·前端·pdf·ocr·maven·intellij-idea
吴声子夜歌1 小时前
Docker入门与实战——热门镜像介绍
运维·docker·容器
方便面不加香菜2 小时前
容器虚拟化基础--CGroups资源控制
运维·docker·容器
山东孙燕姿2 小时前
维修工单的转派与协同:两个人一起上
大数据·运维·服务器·网络·人工智能
AI你一生一世2 小时前
Cloud in a Bottle:把自托管从“运维苦役”变成“可交付的私有云”
运维·部署·状态管理·容器编排·私有云·备份恢复·自托管
Madison-No73 小时前
Jenkins持续集成
运维·ci/cd·jenkins