【发布时间】:2014-02-08 19:12:01
【问题描述】:
我不熟悉在 Java 上使用 AWS 开发工具包。我创建了一个程序来从 Java 创建 AWS 实例并检查它是否正在运行。但我无法弄清楚如何在该运行实例上运行 bash 命令。请帮忙!
try
{
String lscmd = "ls";
Process p=Runtime.getRuntime().exec(lscmd);
p.waitFor();
BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream()));
String line=reader.readLine();
while(line!=null)
{
System.out.println(line);
line=reader.readLine();
}
}
catch(IOException e1) {
e1.printStackTrace();
}
catch(InterruptedException e2) {
System.out.println("Pblm found2.");
}
但我收到一个错误提示,
java.io.IOException: Cannot run program "ls": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at ListInstances.main(ListInstances.java:79)
原因:java.io.IOException: CreateProcess error=2, 系统找不到指定的文件 在 java.lang.ProcessImpl.create(本机方法) 在 java.lang.ProcessImpl.(未知来源) 在 java.lang.ProcessImpl.start(未知来源) ... 5 更多
我不确定如何连接到我创建的实例并在该实例上运行此命令。
【问题讨论】:
-
一种解决方案可能是通过 ssh 进入它,然后使用 jsch 运行命令?
标签: java amazon-web-services sdk amazon-ec2