2009-01-31 9 views
0

로컬 컴퓨터의 원격 시스템에서 배치 파일을 실행해야합니다. 아래의 코드를 사용하여, 나는 다음과 같은 오류가 무엇입니까 :원격 시스템에서 배치 파일을 실행하는 중 "경로가 올바르지 않습니다"라는 오류가 발생하는 이유는 무엇입니까?

Path not correct 

나는 기계의 IP 주소가를, 그리고 공공 공유로 배치 파일을 주어진 이름을 공유 한 것은 dsc입니다.

기계의 IP 주소는 16.181.37.28입니다.

여기 내 코드입니다. 나는 그 길은 잘못되었다는 것을 안다. 어떻게 정확한 경로를 제공 할 수 있습니까?

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/ 

/** 
* 
* @author padmaja 
*/ 

import java.io.*; 
class Test{ 
public static void main(String arg[]){ 
try{ 
String command = "cmd /C start 16.181.37.28/dsc/StartVisTsDataCenterMySql-log.bat"; 
Runtime rt = Runtime.getRuntime(); 
Process pr = rt.exec(command); 

}catch (IOException e) { 
e.printStackTrace(); 
} 
} 
} 

답변

0

Windows에서는 Posix 경로 구분 기호를 사용하고 있습니다. 시도하십시오 "cmd /C \\\\16.181.37.28\\dsc\\StartVisTsDataCenterMySql-log.bat".

1

원격 컴퓨터 또는 로컬 컴퓨터에서 스크립트를 실행하려고합니까? 사용자의 접근 방식은 원격 시스템에서 파일을 읽지 만 로컬에서 실행합니다.

원격 시스템에서 실행중인 항목을 얻는 일반적인 방법은 원격 시스템에서 영구적으로 실행하고 요청을 수신하는 프로세스를 갖는 것입니다. 요청이 도착하면이 프로세스는 실행하려는 배치 파일을 시작합니다.

0

당신은이 서비스 작성하여 작동 여부를 테스트 할 수 있습니다 : 다음

sc \\16.181.37.28 create StartVisTsDataCenterMySql-Log binPath= "cmd /c \\16.181.37.28\dsc\StartVisTsDataCenterMySql-log.bat"

를 실행하는 명령입니다 :

"cmd /c sc \\16.181.37.28 stop StartVisTsDataCenterMySql-Log&sc \\16.181.37.28 start StartVisTsDataCenterMySql-Log"

당신은에 연결해야합니다 관리자로 공유하거나 자격 증명을 저장하십시오. 문제가 없다는 것을 확인한 후에는 srvany으로 변경하십시오. 그렇지 않으면 이벤트 로그에 오류가 발생하며 배치 파일은 30 초 동안 만 실행될 수 있습니다.

올바른 대답이 아니라면 real requirement에 대해 자세히 설명하고 Java에서 배치 파일을 다시 구현하는 것이 현실적인 해결책인지에 대한 정보를 제공 할 수 있습니다.