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

相关推荐
qsjming4 分钟前
EXT4文件系统特性说明
运维
Joren的学习记录31 分钟前
【Linux运维进阶知识】Nginx负载均衡
linux·运维·nginx
Jtti1 小时前
服务器防御SYN Flood攻击的方法
运维·服务器
2501_941982051 小时前
RPA 的跨平台部署与统一自动化策略
运维·自动化·rpa
b***25111 小时前
电池自动分选机:精密分选保障新能源产业质量核心
运维·自动化·制造
数数科技的数据干货1 小时前
游戏流失分析:一套经实战检验的「流程化操作指南」
大数据·运维·人工智能·游戏
蒟蒻要翻身2 小时前
在同一局域网内共享打印机设置指南
运维
chem41113 小时前
魔百盒 私有网盘seafile搭建
linux·运维·网络
早睡的叶子3 小时前
VM / IREE 的调度器架构
linux·运维·架构
兄台の请冷静3 小时前
linux 安装sentinel 并加入systemctl
linux·运维·sentinel