我正在尝试构建一个脚本,该脚本将从 CSV 导入数据并根据填写的数据处理命令。小示例:
使用以下标题格式化的 CSV
Name TargetOU Description ManagingGroup Permission
其中有些是必需的,有些是可选的。
这很容易使用参数来完成,但这是试图在没有用户交互的情况下运行。如果我只有Name
一个可选的,下面的代码将解决这个问题Description
:
If ($_.Description -ne $null) {
New-GPO -Name $_.Name -Description $_.Description }
ElseIF ($_.Description -eq $null) {
New-GPO -Name $_.Name }
如果我想让它更复杂,我最终不得不If
为必需和可选参数的每个可能组合编写一个语句:
If ($_.Description -ne $null -and $_.TargetOU -ne $null) {
New-GPO -Name $_.Name -Description $_.Description | New-GPLink -Target $_.TargetOU }
ElseIf ($_.Description -eq $null -and $_.TargetOU -ne $null) {
New-GPO -Name $_.Name | New-GPLink -Target $_.Target }
等等......对于每一种可能的组合。
有没有更简单的方法来构建这个命令而不需要 100 条If
语句?CSV 可能包含 10 个选项,可根据用户想要完成的内容填写。