1
我想從Linux使用JAVA執行PowerShell腳本。JAVA執行從Linux的powershell腳本
PowerShell腳本在Windows系統中。我必須從使用java bu傳遞2個參數的linux系統調用它。
是否有可能?
感謝
我想從Linux使用JAVA執行PowerShell腳本。JAVA執行從Linux的powershell腳本
PowerShell腳本在Windows系統中。我必須從使用java bu傳遞2個參數的linux系統調用它。
是否有可能?
感謝
得到了解決......
1日下載FreeSSHD http://www.freesshd.com/?ctt=download在Windows(服務器)。 請確保以管理員身份運行。
設置FreeSSHD跟着 這個URL http://www.techrepublic.com/blog/tr-dojo/set-up-a-free-ssh-server-on-windows-7-with-freesshd/ 設置後你可以從linux或使用膩子ssh那個windows系統。
使用Java
package com.sysvana.router.config;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.Session;
import ch.ethz.ssh2.StreamGobbler;
public class Test {
static String hostname = "10.1.10.60";
static String username = "administrator";
static String password = "[email protected]";
public static void main(String[] args) throws IOException {
Connection conn = new Connection(hostname);
conn.connect();
boolean isAuthenticated = conn.authenticateWithPassword (username, password);
if (isAuthenticated == false){
System.out.println("authentication failed");
}
System.out.println(isAuthenticated);
Session sess = conn.openSession();
sess.execCommand ("powershell C:/Users/Administrator/Desktop/test.ps1");
InputStream stdout = new StreamGobbler (sess.getStdout());
BufferedReader br = new BufferedReader (new InputStreamReader (stdout));
while (true)
{
String line = br.readLine();
if (line == null) break;
System.out.println (line);
}
System.out.println ("Exit code" + sess.getExitStatus());
sess.close();
conn.close();
}
}
使用Ganymed SSH-2罐子http://www.ganymed.ethz.ch/ssh2/
我想使用JAVA從Linux運行遠程PowerShell腳本。 – Biswajit
好的... upvote回答你的問題。但爲什麼? – Thufir