gpt4 book ai didi

c# - 将 powershell 变量值返回给 c# 应用程序

转载 作者:行者123 更新时间:2023-11-30 20:56:33 26 4
gpt4 key购买 nike

我正在从 C# 运行 powershell 脚本。

string scriptPath = "/script/myscript.ps1";
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.AddScript(scriptPath);
Collection<PSObject> results = pipeline.Invoke();

例如,如果我的 myscript.ps1 文件在下面;

$test=4
$test++
$test

如何在执行脚本后获取变量test的值。我需要为我的 c# 程序获取该值。

最佳答案

我知道我来晚了,但在你的脚本中,你需要在 Powershell 脚本中要返回的变量前面添加 global:,例如:

$global:test = 4

在 Powershell 脚本中。在 C# 中,打开运行空间、调用策略更改器、设置管道后,您就可以

var result = runspace.SessionStateProxy.PSVariable.GetValue("test");

关于c# - 将 powershell 变量值返回给 c# 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17467629/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com