【发布时间】:2018-10-03 19:37:51
【问题描述】:
CSV:
BackupGpoName、BackupId、GPOName、路径 "GPO1",11111111-2222-3333-444444444444,"GPO1","C:\BackupGPO" "GPO2",78888888-1222-4555-8777-123456789123,"GPO1","C:\BackupGPO"脚本:
$csv = Import-Csv -Path "C:\gpotest.csv" -Header BackupGpoName, BackupId, gponame, Path
$csv | ForEach-Object {
$params = @{
BackupGpoName = $_.BackupGpoName
BackupId = $_.backupid
TargetName = $_.gponame
Path = $_.path
}
$params.$type = $true
Import-Gpo @params -CreateIfNeeded
}
但我得到了错误:
Foreach-Object:无法绑定参数“BackupId”。无法转换价值 “BackupId”键入“System.Guid”。错误:“Guid 应包含 32 位数字 带有 4 个破折号(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。” 在行:2 字符:10 + $csv | Foreach-对象 { + ~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [ForEach-Object], ParameterBindingException + FullyQualifiedErrorId:CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.ForEachObjectCommand【问题讨论】:
-
阅读错误,然后查看您的第一个 backupID。
-
不要指定
-Header。您的 CSV 文件中已包含标题行。
标签: powershell csv import group-policy