2016-04-11 3 views
1

Я хочу вставить пустую новую строку при экспорте в CSV, но то, что я получаю, добавлено «1» вместо пустой новой строки. Вот код, который я использую:Новая строка в Export-CSV не работает

foreach($Group in $Groups) { 
Get-QADGroupMember $Group | select  Name | Export-CSV C:\Users\Nikhil.Tamhankar\Desktop\temp\GroupsInfo.CSV -NoTypeInformation -Append -Encoding UTF8 -UseCulture 
$newLine = "`n" 
$newLine | Export-CSV C:\Users\Nikhil.Tamhankar\Desktop\temp\GroupsInfo.CSV -NoTypeInformation -Append -Encoding UTF8 -UseCulture 
} 

Пожалуйста, предложите, как я могу получить пустую новую строку, вставленную после каждой сделанной записи.

+0

'Export-Csv' пытается« обнаружить »свойства объекта, в данном случае строку, которая имеет только одно свойство,« Длина »- это 1 –

ответ

1

Похоже, что ваш код просто выводит один столбец имен групп. Если это так, то я бы даже не потрудился с выходом CSV в этот момент и просто использовал Set-Content. Добавление в новую строку будет довольно простым.

$Groups | ForEach-Object{ 
    (Get-QADGroupMember $_ | Select-Object -ExpandProperty Name) + "`n" 
} | Set-Content C:\Users\Nikhil.Tamhankar\Desktop\temp\GroupsInfo.CSV -Encoding UTF8 

Я использовал более трубопроводную дружественный foreach-object петлю, так что вы не должны продолжать использовать присоединять.

1

Export-Csv пытается «открыть» свойства объекта, в данном случае строка - которая имеет только одно свойство, то Length - что случается 1.

Использование Add-Content или Out-File -Append -NoNewline (только версия 5) для добавления в существующий файл:

"" |Add-Content -Path C:\Users\Nikhil.Tamhankar\Desktop\temp\GroupsInfo.CSV 
Смежные вопросы