在AWS EC2实例上从JAVA运行Bash命令

在AWS EC2实例上从JAVA运行Bash命令,java,amazon-web-services,sdk,amazon-ec2,Java,Amazon Web Services,Sdk,Amazon Ec2,我不熟悉在Java上使用AWS SDK。我已经创建了一个程序来从Java创建AWS实例,并检查它是否正在运行。但是我不知道如何在那个正在运行的实例上运行bash命令。请帮忙 try { String lscmd = "ls"; Process p=Runtime.getRuntime().exec(lscmd); p.waitFor();

我不熟悉在Java上使用AWS SDK。我已经创建了一个程序来从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个


我不知道如何连接到我创建的实例并在该实例上运行此命令

可能是路径没有定义,并且不知道在哪里可以找到
ls
?尝试使用完整路径(例如,
/bin/ls
)进行验证。

一种解决方案可能是使用ssh连接到该路径,然后使用jsch运行该命令?