java의 Runtime.getRuntime.exec ("") 명령에 관해 간단한 질문이 있습니다. Java 명령 프롬프트 종료
나는 SSH를 통해 게이트웨이 컴퓨터에 터널을 만들려고 노력하고 있어요 : 는String tunnel = "C:\\Program Files\\PuTTY\\putty.exe -ssh -X -P " + localPort + " " + tempUsername + "@" + localIP
+ " -pw " + tempPassword + " -L " + tunnelPort + ":" + gatewayName + ":"+gatewayPort;
Runtime.getRuntime().exec(tunnel);
코드의이 비트는 명령 프롬프트가 나타납니다 성가신 사실을 제외하고는 제대로 작동합니다.
String tunnel = "C:\\Program Files\\PuTTY\\putty.exe -ssh -X -P " + localPort + " " + tempUsername + "@" + localIP
+ " -pw " + tempPassword + " -L " + tunnelPort + ":" + gatewayName + ":"+gatewayPort;
String cmdCommands [] = {tunnel, "exit"};
Runtime.getRuntime().exec(cmdCommands);
그것이 내가 할 또는 더 나은 방법이있는 것처럼 비슷한 방법으로 명령 프롬프트를 닫습니다 가능 :
는 지금은 코드를 실행 한 후 프롬프트를 종료하려고? (이 코드 나던 작업)
코드가 실행 파일 (putty.exe)을 실행 중입니다. 표시되는 명령 프롬프트는 퍼티입니다. SSH 터널을 만들고 싶다면 올바른 라이브러리를 사용해야합니다.이 스레드 http://stackoverflow.com/questions/1677248/simple-ssh-tunnel-in-java – sperumal
...을 참조하십시오. 그런데, 자바 5가 이것을 선호하는 방법은'ProcessBuilder' 클래스를 사용하는 것입니다 (http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/ProcessBuilder.html) – mazaneicha
ohhh 좋은 생각^^ 전임자도했기 때문에 코드를 사용했지만 여분의 라이브러리가 더 좋게 들립니다. – Mister004