Linux 无法更改Jenkins上运行的Shell脚本中的目录

Linux 无法更改Jenkins上运行的Shell脚本中的目录,linux,shell,jenkins,Linux,Shell,Jenkins,我试图在Jenkins上运行一个shell脚本,并希望更改目录。我的代码如下: #!/bin/bash pwd function myprog() { cd root/data } myprog pwd 我尝试了贴出的问题中提到的所有可能性 我尝试了符号链接、别名和函数,但没有成功。在jenkins控制台输出中,我总是会遇到以下错误: /tmp/hudson772738020072372550.sh: line 11: cd: root/data: No such file or dire

我试图在Jenkins上运行一个shell脚本,并希望更改目录。我的代码如下:

#!/bin/bash
pwd
function myprog() {
 cd root/data
}

myprog
pwd
我尝试了贴出的问题中提到的所有可能性

我尝试了符号链接、别名和函数,但没有成功。在jenkins控制台输出中,我总是会遇到以下错误:

/tmp/hudson772738020072372550.sh: line 11: cd: root/data: No such file or directory

我注意到,cd后面有一个冒号,这会引起一些问题吗?请帮忙。谢谢。

这是shell的说法,表示字符串
根/data
与当前目录下的任何目录都不对应


您可能想说的是
cd/root/data

myprog
是一个让人困惑的函数名称。另外,同时使用
函数
关键字和双参数
()
是一种bashism,无法移植到其他shell。我们需要更多有关环境的信息才能成功回答此问题。嗨,Henk,感谢您的回复。我尝试了这两种方法(cd root/data和cd/root/data),但不幸的是都不起作用。我仍然得到相同的错误。嗯,也许目录
/root/data
也不存在?奥卡姆剃刀。创建或查找一个可执行此操作的目录。祝你好运。嗨,亨克,目录已经存在了。我也试过使用现有的目录,但不起作用。Shell脚本在与连接的从机相同的用户下工作。你的奴隶在根目录下连接吗?