Bonjour

Voilà un petit script C# pour lancer des scripts PowerShell:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
 string scriptFile = ".\\script.ps1";
            string scriptParameters = "";
            RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
            Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
            runspace.Open();
            RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
            Pipeline pipeline = runspace.CreatePipeline();
            Command scriptCommand = new Command(scriptFile);
            Collection<CommandParameter> commandParameters = new Collection<CommandParameter>();
            foreach (string scriptParameter in scriptParameters.Split(' '))
            {
                CommandParameter commandParm = new CommandParameter(null, scriptParameter);
                commandParameters.Add(commandParm);
                scriptCommand.Parameters.Add(commandParm);
            }
            pipeline.Commands.Add(scriptCommand);
            Collection<PSObject> psObjects;
            psObjects = pipeline.Invoke();
            runspace.Close();
 
            StringBuilder stringBuilder = new StringBuilder();
            foreach (PSObject obj in psObjects)
            {
                stringBuilder.AppendLine(obj.ToString());
            }
 
            Console.WriteLine(stringBuilder.ToString());
Ma question est la suivante:

j'ai trouvé ces quelques lignes de codes sur ce site:
http://technet.microsoft.com/fr-fr/m...owershell.aspx

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
 
 PS C:\>new-runspace -computer     "WIN-YFZXQMHXAWM"
PS C:\>$server2 = get-runspace -sessionid 2
PS C:\>push-runspace $server2
[win-yfzxqmhxawm]: PS C:\Windows\System32>    pop-runspace
PS C:\>

Apparemment sur ma version de PowerShell, NewPSSession est l'équivalent de new-runspace.
Mais je ne trouve pas l'équivalent de push-runspace...

Quelqu'un peut m'aider?

Le truc c'est que j'aimerais lancer des commandes à distances sur différents serveurs et récupérer le résultat.

Genre comme une connexion ssh ou je lancerais un 'ifconfig' et je récupère le résultat pour le parser par après.

Est-ce que cela sera possible avec NewPSSession?

Merci d'avance