Bash 颤振:在Jenkins中运行shell脚本时未找到命令
我创建了test.sh,内容如下: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" ~表示当前用户的主目录。因此,对你来说,它可
#!/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