如何从远程服务器的Shell脚本运行java -jar命令?

时间:2010-11-24 15:40:49

标签: java shell

请立即帮我...

在shellscript中使用JAVA命令的问题..

我在一台服务器上有一个Cachereload.sh脚本,它有以下命令:

java -jar SingMgmnt.jar $4 $2 $3 sixdee sixdee $5

当我从同一台服务器运行它时,这工作正常。

但我想从另一台服务器运行这个脚本,我把它作为

ssh oracle@192.168.0.72 'sh -c "./Cachereload.sh"'

将提示输入密码,然后执行脚本。但后来我收到了一个错误,

./CacheReload.sh: line 4: java: command not found

但是只有java命令不起作用我认为.. bcoz pwd,ls甚至mysql命令从远程服务器本身工作正常..

请帮帮我..

感谢大家 AKHIL

2 个答案:

答案 0 :(得分:2)

这与您的ssh环境有所不同,该环境与交互式shell的环境不同。例如,假设您正在使用bash,则.bashrc文件将仅用于交互式shell环境。因此,如果您在PATH文件中设置.bashrc变量,它只会对交互式shell生效。

一个简单的解决方法是在Cachereload.sh脚本中引用java二进制文件的绝对路径。

答案 1 :(得分:0)

当oracle用户在服务器上运行此命令时会发生什么,而不是通过一行ssh。

很可能java不在此用户的PATH中(可能根本不安装)。