WEB开发网
开发学院WEB开发ASP.NET 如何让C#快速执行PowserShell的脚本 阅读

如何让C#快速执行PowserShell的脚本

 2010-11-09 13:10:29 来源:WEB开发网   
核心提示:步骤如下:<1>前提:安装PowerShell SDK.要在C#执行Power Shell 脚本.需要在PowerShell的SDK添加相关引用. Windows 7系统自动集成Windows PowerShell 2.0版本.如果尚未请点击下载安装<2>新建Console Applicatio

步骤如下:

<1>前提:安装PowerShell SDK.

要在C#执行Power Shell 脚本.需要在PowerShell的SDK添加相关引用. Windows 7系统自动集成Windows PowerShell 2.0版本.如果尚未请点击下载安装

<2>新建Console Application项目 命名:CallPowerShellDemo .添加引用:System.Management.Automation 这个命名空间需要引用PowerShell SDK中System.Management.Automation.dll. 如果已经PowerShell SDK可以在目录:C:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\v1.0 下找到:

2010-11-09_113358

添加相关引用:

//导入引入  
using System.Management.Automation;   
using System.Management.Automation.Runspaces;   
using System.Management;   
using CallPowerShellDemo.EntityModel;

执行脚本方法:

Main方法中调用:

static void Main(string[] args)   
{   
Console.WriteLine("请输入你要执行的PowserShell命名:");   
string gettakeresult=Console.ReadLine();   
//Main Method Get All Process   
List<string> getshellcmdlist = new List<string> ();   
List<EntityModel.ShellParameter> getpatalist = new List<ShellParameter>    
{  
new ShellParameter{ ShellKey="Name",ShellValue="QQ*"}  
};  
if (!string.IsNullOrEmpty(gettakeresult))  
{  
getshellcmdlist.Add(gettakeresult);  
}  
//Execu Cmd  
string getresult=Program.ExecuteShellScript(getshellcmdlist,getpatalist);  
//Output ExecuteResult  22:              Console.WriteLine("执行结果:");  
Console.WriteLine(getresult);  
}

 

执行结果: 获取以Ca作为开头名称系统进程信息 ShellScript :get-process Ca*

则利用PowerShell脚本轻松获取进程名称以Ca开头所有进程名称. 类似我们轻松在获取360在本地系统详细的版本信息: get-process 360* –fileversioninfo

2010-11-09_115148

1 2  下一页

Tags:C# 执行 PowserShell 脚本

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接