我需要从 C# 中执行 PowerShell 脚本。该脚本需要命令行参数。
这是我到目前为止所做的:
RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();
RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.Add(scriptFile);
// Execute PowerShell script
results = pipeline.Invoke();
scriptFile 包含类似“C:\Program Files\MyProgram\Whatever.ps1”的内容。
该脚本使用命令行参数,例如“-key Value”,而 Value 可以是也可能包含空格的路径。
我不让这个工作。有谁知道如何从 C# 中将命令行参数传递给 PowerShell 脚本并确保空格没有问题?