Powershell工作流中的function和script

本文介绍如何在流程工作流中运行脚本,并详细解释了脚本执行顺序、远程计算机运行脚本的情况以及不同环境下的操作。文章还提供了解决路径问题的方法,确保在不同场景下脚本能够正确执行。

直接看例子吧

workflow get-computersystem {

 param([string[]]$computerName)

 function get-Fcomputersystem {

 param ([string]$Fcomputer)

 Get-WmiObject -Class Win32_ComputerSystem -ComputerName $Fcomputer

} 

  foreach -parallel($computer in $computerName) {

     if (Test-Connection -ComputerName $computer -Quiet -Count 1) {

         get-fcomputersystem -fcomputer $computer

     }

     else {

       "$computer unreachable"

     }

  }

}


接下来看看在workflow中怎么运行script

先生成三个ps1文件,如下图


然后编写脚本


改!



路径怎么写呢!这是个问题!


其实,如果对脚本的执行顺序没有要求的话,还可以改成这样的

workflow get-ADReport {

 inlinescript {

    C:\workflow\get-disabledaccount.ps1

   C:\workflow\get-expiredaccount.ps1

   C:\workflow\get-passwordNexpire.ps1

}

}

补充,如何在远程计算机上运行?

例如ps1的脚本不在运行workflow的本机上,那么则会出现以下情况:

1. 当ps1脚本所在的服务器非DC,但是安装了AD管理工具,而运行workflow的计算机也非DC,且没有安装AD管理工具


2 当ps1脚本所在的服务器非DC,没有安装AD管理工具,而运行workflow的计算机有安装AD管理工具


3. 当ps1脚本所在的服务器为DC,而运行workflow的计算机也非DC,且没有安装AD管理工具(成功)

4. 当ps1脚本所在的服务器为DC,而运行workflow的计算机安装AD管理工具(成功)

5.当ps1脚本所在的服务器非DC,而运行workflow的计算机有安装AD管理工具,但是在本机上运行即可成功



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值