zoukankan      html  css  js  c++  java
  • C# 调用PowerShell方法

    PowerShell应为编写和运行都很方便,所以为了重复利用,经常写了一些小方法或者PS代码片段。使用的时候可能会很难找到自己想要的那个方法,如果要是有一个界面把这些代码管理起来并且调用,那就很爽了

    1.创建一个powershell的方法,供C#调用,方法很简单,两个数的加法运算

    1 function Sum
    2 {
    3 param([int]$first, [int]$second)
    4 $result = $first + $second
    5 return $result
    6 }

    2. 在C#的控制台程序中创建一个私有方法,调用powershell

    首先定义一个powershell存放路径的全局变量

     
     1 private static string script =File.ReadAllText(@"PathSum.ps1");
     2 private static void CallPS1()
     3 {
     4     using (Runspace runspace = RunspaceFactory.CreateRunspace())
     5         {
     6          runspace.Open();
     7 
     8          PowerShell ps = PowerShell.Create();
     9          ps.Runspace = runspace;
    10          ps.AddScript(script);
    11          ps.Invoke();
    12 
    13          ps.AddCommand("Sum").AddParameters(
    14 
    15              new Dictionary<string, int>()
    16              {
    17                  {"first", 5},
    18                  {"second", 4}
    19              }
    20          );
    21 
    22          foreach (PSObject result in ps.Invoke())
    23          {
    24              Console.WriteLine("CallPS1()");
    25              Console.WriteLine(result);
    26          }
    27 
    28 }
    29 
    30         }

    调用方法需要添加一个引用System.Management.Automation.dll 如果找不到可以到这个路径下找到:C:windowsassemblyGAC_MSILSystem.Management.Automation1.0.0.0__31bf3856ad364e35System.Management.Automation.dll

  • 相关阅读:
    log4j.properties 配置示例
    spark去重计数操作(代码示例)
    mysql数据库
    Mysql之sql语句操作
    mysql修改root密码的多种方法
    mysql的主从复制过程
    mysql命令用法复习笔记
    Linux下如何查看系统启动时间和运行时间安装时间
    一键系统优化15项脚本
    MongoDB
  • 原文地址:https://www.cnblogs.com/jameslif/p/3663967.html
Copyright © 2011-2022 走看看