我有公司联系人的CSV格式。
我想创建一个脚本来读取CSV行,并查看存储在AD中的当前内容。
当我从AD读取联系人然后从CSV中读取该行时,在屏幕中它们看起来相同但是它们失败并且不等于功能。
我的问题是:
最好是阅读联系的每一部分,即:
contact.firstname
并与compare.firstname
contact.lastname
并与compare.lastname
contact.emailaddress
并与compare.emailaddress
使用一组If命令?或者有更简单的方法吗?
答案 0 :(得分:0)
你总是可以从某处开始,然后寻找完美的方式。帮助贡献者开始适合您的事情的一个简单示例可能是:
$csv = import-csv C:\Temp\test.csv -Delimiter ";"
这会给你一个这样的对象
firstname lastname email
--------- -------- -----
john doe john@doe.com
johnny doe johnny@doe.com
jim doe jim@doe.com
现在可以通过多种方式解析此对象。根据您想要比较的字符串变量,我建议您使用ForEach-Object(或者它的%{}缩写)
像这样:
$csv | % {
if ($_.Firstname -eq $Contact.Firstname) {Write-host "Match!" -fo green}
else{Write-host "No match :(" -fo red}
}
您将能够逐个循环遍历csv文件的所有对象,并比较它们的音符属性。
希望它可以帮助你开始。