2016-11-20 1 views
0

Ich habe ein Java-Programm geschrieben, das einen PowerShell-Befehl ausführt. Hier ist mein Code:Ausführen von Vmware PowerShell-Befehlen in Java Programm

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 

public class PowerShellCommand { 
    public static void main(String[] args) throws IOException { 
    String command = "powershell.exe your command"; 
    // Getting the version 
    String command = "powershell.exe $PSVersionTable.PSVersion"; 
    // Executing the command 
    Process powerShellProcess = Runtime.getRuntime().exec(command); 
    // Getting the results 
    powerShellProcess.getOutputStream().close(); 
    String line; 
    System.out.println("Standard Output:"); 
    BufferedReader stdout = new BufferedReader(new InputStreamReader(
     powerShellProcess.getInputStream())); 
    while ((line = stdout.readLine()) != null) { 
     System.out.println(line); 
    } 
    stdout.close(); 
    System.out.println("Standard Error:"); 
    BufferedReader stderr = new BufferedReader(new InputStreamReader(
     powerShellProcess.getErrorStream())); 
    while ((line = stderr.readLine()) != null) { 
     System.out.println(line); 
    } 
    stderr.close(); 
    System.out.println("Done"); 
    } 
} 

Was ich tun möchte, ist: statt eines Befehls in einem lokalen Powershell Ausführen Ich möchte den Code machen einen Befehl in der Windows Server Powershell ausführen, die auf VMware läuft? Wie sollte ich den Code ändern, um dies zu tun?

Antwort

0

Have Powershell invoke der Befehl auf der Remote-Host:

String server = "remotehost"; 
String command = "powershell.exe -Command \"&{Invoke-Command -Computer " + 
       server + " -ScriptBlock {$PSVersionTable.PSVersion}}\""; 

Die Remote-Host muss PSRemoting aktiviert sein, damit dies funktioniert.

+0

Ich tat, wie du mir gesagt hast Aber dieser Fehler erscheint: Verbindung zum Remote-Server 192.168.2.3 schlug mit der folgenden Fehlermeldung fehl: Zugriff verweigert. Weitere Informationen finden Sie im Hilfethema about_Remote_Troubleshooting unter . + CategoryInfo: OpenError: (192.168.2.3:String) [], PSRemotingTransportException + FullyQualifiedErrorId: AccessDenied, PSSessionStateBroken -------------------------- ---------------------------------- Ich habe viele Nachforschungen angestellt, aber ich konnte nichts dafür finden –

+0

Wurde das Hilfethema "about_Remote_Troubleshooting" angezeigt? –

Verwandte Themen