title: Cannot run program "..." error=2, No such file or directory (java)
body: <p>I am trying to make a java program that will set up a SSH connection for me on my macbook. It prompts me for the username, and then the IP address, then it is supposed to do "ssh username@ip".</p>
  
  <p>Below is my code:  </p>
  
  <pre><code>import java.io.BufferedReader;
  import java.io.InputStreamReader;
  import java.util.Scanner;
  
  public class SSH {
      public static void main(String[] args) throws Exception {
      boolean rep = true;
      String username = (null);
      String IPAdress = (null);
      while (rep) {
          Scanner scanner = new Scanner(System.in);
          System.out.print("Username:  ");
          username = scanner.next();
          System.out.print("\nIP Adress:  ");
          IPAdress = scanner.next();
          System.out.println("\n\nIs this correct?\nUsername:  " + username + "\nIP Adress:  " + IPAdress + "\nY/N");
          char responce = scanner.next().charAt(0);
  
          if (responce == 'Y' || responce == 'y') {
              rep = false;
              scanner.close();
          } else if (responce == 'N' || responce == 'n') {
  
          } else {
              Error displayErrorMessage = new Error();
              displayErrorMessage.displayError();
          }
      }
      String SSHStartup = username + "@" + IPAdress;
      System.out.println("Running command:  ssh " + SSHStartup);
      String[] command = { "/bin/bash, -c , ssh " + SSHStartup };
      Process p = Runtime.getRuntime().exec(command);
      p.waitFor();
      BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
      String line = "";
      StringBuffer output = new StringBuffer();
      while ((line = reader.readLine()) != null) {
          output.append(line + "\n");
      }
  }
  }
  </code></pre>
  
  <p>I know, its messy, and now well indented, but instead of executing the command, it gives me this:</p>
  
  <pre><code>Exception in thread "main" java.io.IOException: Cannot run program "/bin/bash, -c , ssh root@(ip here)": error=2, No such file or directory
  at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
  at java.lang.Runtime.exec(Runtime.java:620)
  at java.lang.Runtime.exec(Runtime.java:485)
  at SSH.main(SSH.java:32)
  Caused by: java.io.IOException: error=2, No such file or directory
  at java.lang.UNIXProcess.forkAndExec(Native Method)
  at java.lang.UNIXProcess.&lt;init&gt;(UNIXProcess.java:248)
  at java.lang.ProcessImpl.start(ProcessImpl.java:134)
  at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
  ... 3 more
  </code></pre>
  
  <p>For the purpose of this post, I have removed the IP address, but when I compile and run it, I try the actual one, and it gives me the same error.</p>
  
  <p>Help?</p>