在C#中,可以使用Process类来执行PowerShell脚本,并通过StandardOutput属性获取脚本的输出结果。如果想要在PowerShell脚本执行结束后显示消息,可以在C#中使用Process类的Exited事件来实现。
以下是一个示例代码:
using System;
using System.Diagnostics;
class Program
{
static void Main()
{
string scriptPath = "path_to_your_powershell_script.ps1";
Process process = new Process();
process.StartInfo.FileName = "powershell.exe";
process.StartInfo.Arguments = $"-ExecutionPolicy Bypass -File \"{scriptPath}\"";
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.UseShellExecute = false;
process.EnableRaisingEvents = true;
process.OutputDataReceived += (sender, e) =>
{
if (!string.IsNullOrEmpty(e.Data))
{
Console.WriteLine(e.Data);
}
};
process.Exited += (sender, e) =>
{
Console.WriteLine("PowerShell脚本执行结束!");
};
process.Start();
process.BeginOutputReadLine();
process.WaitForExit();
}
}
在上述代码中,首先创建一个Process对象,并设置其StartInfo属性来指定要执行的PowerShell脚本文件。然后,通过订阅OutputDataReceived事件来获取脚本的输出结果,并在控制台中显示。最后,通过订阅Exited事件,在脚本执行结束后显示一条消息。
请注意,上述代码中的"path_to_your_powershell_script.ps1"需要替换为你实际的PowerShell脚本文件路径。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云函数(SCF)。
领取专属 10元无门槛券
手把手带您无忧上云