zoukankan      html  css  js  c++  java
  • PowerShell工作流学习-2-工作流运行Powershell命令

    关键点:

    a)inlineScript 活动具有活动通用参数,但不具有PowerShell 通用参数,且inlineScript 脚本块中的命令和表达式不具有工作流的功能
    b)默认inlineScript 活动在单独的进程中执行而不是和工作流同一进程中执行,但是可使用参数OutOfProcessActivity进行控制,如果需要删除或者还原相关配置使inlineScript 活动在工作流进程内或者进程外运行,请参考例b
    c)工作流中定义的变量对 InlineScript 脚本块中的命令不可见,除非使用$Using修饰符
    d)InlineScript 命令可以更改从工作流作用域导入的变量的值,但所做的更改在工作流作用域中不可见。 若要使其可见,则将更改的值返回到工作流作用域,请使用例d

    e)PowerShell脚本(.ps1)需要在InlineScript 活动中运行

    例b:

    #工作流进程内运行
    
    PS C:Windowssystem32> (Get-PSSessionConfiguration Microsoft.PowerShell.Workflow).OutOfProcessActivity
    InlineScript
    
    PS C:Windowssystem32>$o = New-PSWorkflowExecutionOption -OutOfProcessActivity ""
    
    PS C:Windowssystem32>Set-PSSessionConfiguration Microsoft.PowerShell.Workflow -SessionTypeOption $o -Force
    
    PS C:Windowssystem32> (Get-PSSessionConfiguration Microsoft.PowerShell.Workflow).OutOfProcessActivity
    
    #还原配置,在工作流进程外运行
    
    PS C:Windowssystem32> (Get-PSSessionConfiguration Microsoft.PowerShell.Workflow) | Unregister-PSSessionConfiguration 
    
    PS C:Windowssystem32> Enable-PSRemoting -Force
    
    PS C:Windowssystem32> (Get-PSSessionConfiguration Microsoft.PowerShell.Workflow).OutOfProcessActivity
    
    InlineScript
    

    例c:

    workflow test-wf4
    {
        $a = 3
        InlineScript {"Inline A0 = $a"}
        InlineScript {"Inline A1 = $Using:a"}
    }
    
    PS C:Windowssystem32> test-wf4
    Inline A0 = 
    Inline A1 = 3
    

    例d:

    workflow test-wf5
    {
        $a = 3
    
        InlineScript {$a = $using:a+1; "Inline A = $a"}
        "Workflow A = $a"
    
         $a = InlineScript {$a = $Using:a+1; $a}
         "Workflow New A = $a"
    }   
    
    PS C:Windowssystem32> test-wf5
    Inline A = 4
    Workflow A = 3
    Workflow New A = 4
    

    例e:

    workflow test-wf6
    {
        $ie = InlineScript 
        {
            New-Object -ComObject InternetExplorer.Application -property @{navigate2="www.baidu.com"}
        }
        $ie.LocationName    
    } 
    
    test-wf6
    
    PS C:Windowssystem32> D:无标题2.ps1
    百度一下,你就知道
    
  • 相关阅读:
    缓存IO读写的方式
    mapboxgl 纠偏百度地图
    GIS常用算法
    DevExpress VCL TdxBar工具栏上的按钮等居右对齐无效的问题
    dxRichEditControl、Invalid operation in GDI+ (Code: 2)
    Indy+POP/SMTP收发邮件
    VUE父组件给子组件传对象
    Linux下进程间通信
    Linux下守护进程
    Linux下进程控制相关
  • 原文地址:https://www.cnblogs.com/lixiaonuohao/p/7121117.html
Copyright © 2011-2022 走看看