在某个ip下执行某条命令
- 根据ip以及服务名称查询该服务安装到的目录
public String getDic(String ipAddress, String serviceName) {String installDir = null;try {ProcessBuilder processBuilder = new ProcessBuilder("cmd.exe","/c","sc \\\\\\\\" + ipAddress + " qc " + serviceName + " | findstr BINARY_PATH_NAME");Process process = processBuilder.start();BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));String line;while ((line = reader.readLine()) != null) {String[] path = line.trim().split("\\"");if (path.length > 1) {File file = new File(path[1]);installDir = file.getParent();break;}}} catch (Exception e) {e.printStackTrace();}return installDir;
}
- 根据ip以及安装到的目录执行cmd命令
public static void executeCommand(String ipAddress, String dic) {String[] command = {"cmd", "/c", "vncviewer.exe " + ipAddress};File workingDirectory = new File(dic);ProcessBuilder builder = new ProcessBuilder(command);builder.directory(workingDirectory);builder.redirectErrorStream(true);Process process = null;try {process = builder.start();} catch (IOException e) {e.printStackTrace();}java.util.Scanner scanner = new java.util.Scanner(process.getInputStream()).useDelimiter("\\\\A");String output = scanner.hasNext() ? scanner.next() : "";System.out.println("output:" + output);int exitCode;try {exitCode = process.waitFor();} catch (InterruptedException e) {exitCode = -1;}if (exitCode == 0) {System.out.println("命令执行成功");} else {System.out.println("命令执行失败");}
}
小故事大全