[英]Launching powershell scripts (with parameters) from c# app
我正在嘗試制作一個簡單的(或者我認為是這樣的)應用程序,它可以更輕松地啟動.ps1 腳本,以便非 powershell 精通的用戶可以使用它們。 這是它的樣子
現在,我設法弄清楚了有關運行腳本的一部分:
private string RunPowershell_1(string skripta)
{
StringBuilder stringBuilder = new StringBuilder();
foreach (string str in PowerShell.Create().AddScript(skripta).AddCommand("Out-String").Invoke<string>())
{
stringBuilder.AppendLine(str);
}
return stringBuilder.ToString();
}
但我通常會運行需要參數的腳本,所以我希望能夠從我導入的腳本中讀取參數列表,為它們賦值,然后運行腳本(輸出應該 go 到 txtPreview 或文件)。
有沒有辦法做到這一點? 如果有另一種(更好的)方法來解決這個問題,我會全力以赴。
您可以使用此 powershell 命令獲取參數列表。
(get-command get-netadapter).Parameters
這就是您可以在 C# 中讀取其 output 的方式:
using (PowerShell ps = PowerShell.Create())
{
ps.AddScript("...");
Collection<PSObject> output = ps.Invoke();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.