PowerShell 从 CSV 导入数据并对其进行排序以自动化 New-CMBoundary (SCCM)

PowerShell import and sort data from CSV to Automate New-CMBoundary (SCCM)

我有一个 CSV,我在使用 CONCAT 和其他一些函数时处理了子网信息。我有地址范围边界和站点,并希望使用 PowerShell 和 CSV 文件以及 New-CMBoundary cmdlet 自动创建 SCCM IP 地址范围边界。请看下面:

到目前为止的代码:

         'C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin'
        Import-Module .\ConfigurationManager.psd1
        cd SCC:

                Get-CMSite

                $subnetranges = import-csv C:\subnets.csv
                $Site = $subnetranges | select -ExpandProperty "Site Code"
                $Range = $subnetranges | select -ExpandProperty "VLAN5 Range"

    ForEach ($subnet in $subnetranges) {

                    New-CMBoundary -DisplayName $Site -BoundaryType IPRange -Value $Range

    }

这显然不太对,你能看出我在做什么吗?我如何将 CSV 中的每一行放入相应的变量中,然后通过使用 ForEach 循环进行枚举?如果那是最好的方法。

提前致谢

根据此站点和章节,您可以将 CSV 中的值通过管道传输到 NEW-CMBOUNDARY cmdlet。

http://www.dexterposh.com/2014/07/powershell-sccm-2012-boundaries.html

这是工作代码的实际视频运行: https://youtu.be/jjjigfddkm8

本质上,他只是将 import-csv c:\file.csv | new-cmboundary 与 3 个值(名称、类型、值)进行管道传输,并且它起作用了。我已将其复制到 T,但无论是出于爱还是金钱,都无法在该 cmdlet 的帮助下将其发送到 work.Looking,不接受管道输入。他是如何让管道输入被接受的?

这是答案:

#import boundaries
$csv = Import-Csv C:\iprangescsvnew.csv
cd POS:
foreach($line in $csv){

            Write-host "Creating boundary for $($line.subnet)"
            New-CMBoundary -Name $line.'Name' -Type IPRange -Value $line.Value }