我在csv文件中有一个看起来像这样的字段。 CN = TSCHA-MGMT01-V,OU =虚拟工作站,OU = Acroplis,OU = Chennai,OU = WestTLRCorp,DC = jfr,DC =域,DC = com
我想在该字段上进行搜索,如果出现了Acroplis这个词,则csv文件中的下一个字段称为Region。我想用文本EMEA填充该字段,然后将包含新数据的文件导出到新的csv文件。 CSV文件的格式为
域名:apac
cn:BJZV0053
dn:CN = BJZV0053,OU =瘦客户端,OU = BJZ,OU = GD2_9_4,OU =计算机,OU = CN,DC = apac,DC = ime,DC =域,DC = com
operatingSystem:Windows XP Professional
地区:
$vmimport = Import-Csv "c:\Scripts\06182014VirtualData.csv"
if ($vmimport.dn | Select-String -pattern "Acroplis")
{
$vmimport.Region = "EMEA"}
Export-Csv C:\Scripts\RegionFinal.csv
答案 0 :(得分:1)
我认为这就是你之后的事情:
Import-Csv "c:\Scripts\06182014VirtualData.csv" | ForEach-Object {
if ($_.dn -like "*Acroplis*") {
$_.Region = "EMEA"
}
$_ | Export-Csv "C:\Scripts\RegionFinal.csv" -NoTypeInformation -Append
}
如果您需要不同的东西,则需要清理样本数据。例如,您的示例代码正在查看CN
字段,但示例数据看起来应该使用DN
字段。