Почему powershell не принимает мою отредактированную CSV? - PullRequest
0 голосов
/ 06 февраля 2020

Все в моем скрипте 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, с которым люди сталкивались, или есть какой-то особый трюк, который я должен сделать, когда сам изменяю данные?

Ответы [ 4 ]

2 голосов
/ 06 февраля 2020

Существует высокая вероятность того, что вы повреждаете структуру CSV в своих попытках удалить некоторую информацию, хотя невозможно сказать, если вы не передали файл CSV, с которым работаете.

(Также я Я не уверен, что ваша опечатка здесь изолирована, но убедитесь, что она имеет вид "DistinguishedName" , а не "DestinguishedName" ).

Правильный файл CSV, в контексте, аналогичном вашему вопросу, будет иметь формат:

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

Где "Роберт", "Саманта" и "Джулианна" соответствуют SamAccountName property- и «Bob», «Sam» и «Juli» соответствуют DistinguishedName собственность.

1 голос
/ 06 февраля 2020

Попробуйте

ipcsv -delimiter "<delimiter>" "filename.csv" 

, где <'delimiter'> является одним из [,; | `t]

1 голос
/ 06 февраля 2020

CSV-файлы должны быть одинаковыми независимо от того, как файл был сгенерирован. Я отредактировал вручную тысячи файлов CSV без проблем. CSV-файлы - это подтип текстовых файлов с разделителями, использующий запятую для разделителя полей и двойную кавычку для разделителя текста, например:

"Field1","Field2","Field3","Number1"
"Text1","Text2","Text3",7
"MoreText1","MoreText2","MoreText3",14

В перечисленных вами примерах нет запятых в их, поэтому может быть поэтому они не распознаются как данные .CSV.

0 голосов
/ 07 февраля 2020

Я открыл его в блокноте по сравнению с Excel, и теперь я вижу, что форматирование было испорчено. после исправления этого теперь я могу заставить его функционировать как ожидалось.

...