【发布时间】:2014-04-06 04:28:45
【问题描述】:
我在亚马逊机器上有一个脚本,我会使用 netbeans 的 ssh 运行这个脚本。 我用这个代码:
String myKey="/home/local/my_key.pem";
Runtime runtime = Runtime.getRuntime();
String commande = "ssh -i "+myKey+" ubuntu@ec2-53-71-22-288.eu-west-1.compute.amazonaws.com 'bash runFile.bash' -o StrictHostKeyChecking=no ";
Process p = runtime.exec(commande);
p.waitFor();
但它不起作用。当我打印p.getErrorStream() 时,我得到:
bash: writeFile.bash: command not found
当我从bash 运行commande 时,它可以工作,但在netbeans 中不行!
有人可以解释一下为什么吗?请问其他解决方案?
谢谢
【问题讨论】:
-
你得到了什么?错误信息?你能把它添加到问题中吗?
-
没有错误,只是命令行没有做出应该做的事!
-
返回什么?你也可以阅读
p的getOutputStream()和getErrorStream()看看你能不能看出问题可能是什么 -
还有...有
~/local/my_key.pem吗? -
什么是
writeFile.bash?它是您要执行的文件吗?它应该在哪里?它是可执行的吗?尝试执行./writeFile.bash
标签: java bash ssh amazon-ec2