Форматирование таблиц в PowerShell для экспорта в CSV - PullRequest
0 голосов
/ 25 января 2019

Я серьезно лишен сна и стресса, так что это, вероятно, чрезвычайно просто, но я все еще не могу понять это.

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

Я просто хочу, чтобы выходные данные были разделены столбцами, чтобы у меня был простой обзор в Excel.

Get-Service | Sort-Object Status | Format-Table -AutoSize | Out-String -Width 10000 | Out-File -Append "C:\temp\Test.csv"

Но вот что я получаю: Услуга

Вот что происходит, если я использую CMD Export-CSV: Службы

Ответы [ 2 ]

0 голосов
/ 25 января 2019

Разделителем CSV по умолчанию для PowerShell является запятая. Чтобы Excel правильно прочитал CSV, измените его на точку с запятой, используя параметр -Delimiter:

Get-Service | sort Status | Export-Csv "C:\temp\Test.csv" -NoTypeInfo -Delim ";"

Или используйте переключатель -UseCulture (спасибо @JosefZ), который использует тот же параметр ListSeperator для региона, что и Excel:

Get-Service | sort Status | Export-Csv "C:\temp\Test.csv" -NoTypeInfo -UseCulture
0 голосов
/ 25 января 2019

Почему бы тогда не просто экспортировать в CSV?

Get-Service | Select Name,DisplayName,Status | Sort-Object Status | Export-Csv "C:\temp\Test.csv" -NoTypeInformation
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...