首页 > 解决方案 > 为什么powershell不接受我手工编辑的CSV

问题描述

我的 Powershell 脚本中的所有内容都按预期工作,但是如果我使用导出的 CSV 并从中删除脚本中不需要的几行和列,它会告诉我我未触及的字段为空。

这是我正在运行的脚本,它只需要 2 个字段,DistinguishedName 和 SamAccountName。

ipcsv C:\Users\####\####\EditedCSV.csv | select-object DistinguishedName,SamAccountName | ForEach{
Rename-adobject $_.DistinguishedName -NewName $_.SamAccountName -WhatIf -Confirm:$false
}

我开始:

SamAccountName C GID DestinguishedName WhenCreated Description CN

并将其更改为:

SamAccountName DestinguishedName

它不接受人们弄乱的csv,还是我自己修改数据时应该做的一些特殊技巧?

标签: powershellactive-directory

解决方案


在您删除某些信息的过程中,您极有可能破坏了 CSV 结构,但除非您要共享您正在使用的 CSV 文件,否则这是不可能的。

(另外我不确定您的错字是否与此处隔离,但请确保您将其设置为"DistinguishedName"而不是"DestinguishedName")。

在与您的问题类似的上下文中,正确的 CSV 文件将具有以下格式:

SamAccountName,DistinguishedName
Robert,Bob
Samantha,Sam
Julianna,Juli

其中“Robert”、“Samantha”和“Julianna”对应于SamAccountName属性,而“Bob”、“Sam”和“Juli”对应于DistinguishedName 属性。


推荐阅读