Bash 颤振:在Jenkins中运行shell脚本时未找到命令

Bash 颤振:在Jenkins中运行shell脚本时未找到命令,bash,jenkins,Bash,Jenkins,我创建了test.sh,内容如下: #!/bin/bash echo "Hello world" flutter doctor 当我通过终端运行此脚本时,一切正常: sh test.sh 但是当我通过Jenkins运行脚本时,脚本失败了。我得到以下错误: line 3: flutter: command not found 我的.bash_配置文件是: export PATH="$PATH:~/Development/flutter/bin" ~表示当前用户的主目录。因此,对你来说,它可

我创建了test.sh,内容如下:

#!/bin/bash
echo "Hello world"
flutter doctor
当我通过终端运行此脚本时,一切正常:

sh test.sh
但是当我通过Jenkins运行脚本时,脚本失败了。我得到以下错误:

line 3: flutter: command not found
我的.bash_配置文件是:

export PATH="$PATH:~/Development/flutter/bin"

~
表示当前用户的
主目录
。因此,对你来说,它可能是,也就是说,
/home/anivaler
,但对詹金斯来说,它很可能是别的东西。要让它对任何人都有效,请摆脱
~
,并使用完整的绝对路径,即

export PATH=${PATH}:/home/anivaler/Development/flutter/bin
如果您不确定正确的路径应该是什么,只需打开终端,
cd
到该目录,然后执行
pwd

cd ~/Development/flutter/bin
pwd

这将显示该目录的完整路径。然后你只需要编辑said
.bashrc
,你就应该很好了

毫无疑问,你的
~
和詹金斯的@MarcinOrlowski是一样的。我的Jenkins路径是:/Users/Shared/Jenkins/但是如何使颤振与Jenkins一起工作呢?请参阅下面的答案:未找到命令。现在,我在.bash_profile中的路径是:export path=“$path:/Users/myname/Development/flatter/bin”remove
(我编辑了我的答案)。还请记住,您需要关闭当前shell(或手动关闭源bashrc),否则$path不会更改。您可以使用纯
echo$path