Преобразует объекты Microsoft .NET Framework в набор строк переменной длины, содержащих разделенные запятыми значения (CSV), и сохраняет эти строки в CSV-файл.
Синтаксис
Export-CSV [[-Delimiter] <char>] [-Path] <string> -InputObject <psobject> [-Кодирование <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>] Export-CSV [-UseCulture] [-Path] <string> -InputObject <psobject> [-Кодирование <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>]
Описание
Командлет Export-CSV создает файл из CSV-строк переменной длины, который представляет заданные объекты.
С помощью командлета Import-CSV можно воссоздавать объекты из CSV-строк в файлах. В результате будут получаться объекты, которые являются CSV-версиями исходных объектов и содержат строковые представления значений свойств, но не содержат методов.
Можно также использовать командлеты ConvertTo-CSV и ConvertFrom-CSV для преобразования объектов .NET Framework в строки CSV и обратно. Командлет Export-CSV аналогичен командлету ConvertTo-CSV за исключением того, что он сохраняет строки CSV в файл.
С помощью параметров командлета Export-CSV можно задать отличный от запятой разделитель или сделать так, чтобы командлет Export-CSV использовал разделитель по умолчанию для текущей культуры.
При передаче командлету Export-CSV нескольких объектов командлет Export-CSV формирует файл на основании свойств первого отправленного объекта. Если у оставшихся объектов нет одного из указанных свойств, то значение этого свойства для соответствующего объекта равно NULL, что обозначается двумя последовательными запятыми. Если же у оставшихся объектов имеются дополнительные свойства, значения этих свойств будут проигнорированы.
Дополнительные сведения см. в описании командлета Export-CSV и раздел "Примечания".
Параметры
-Delimiter <char>
Задает разделитель значений свойств. По умолчанию используется запятая (,). Введите символ, например двоеточие (:). Чтобы задать точку с запятой (;), заключите ее в кавычки.
Обязательно? |
false |
Позиция? |
2 |
Значение по умолчанию |
, (comma) |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Кодирование <string>
Задает кодировку экспортируемого CSV-файла. Допустимые значения: Unicode, UTF7, UTF8, ASCII, UTF32, BigEndianUnicode, Default и OEM. По умолчанию используется значение ASCII.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
ASCII |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Force
Перезаписывает файл по указанному пути, не выводя предупреждение.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-InputObject <psobject>
Задает объекты для экспорта в формате строк CSV. Введите переменную, содержащую объекты, либо получающую их команду или выражение. Кроме того, можно передать объекты командлету Export-CSV по конвейеру.
Обязательно? |
true |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue, ByPropertyName) |
Принимать подстановочные знаки? |
false |
-NoClobber
Не перезаписывать существующий файл (то есть не заменять его содержимое). По умолчанию если файл существует по указанному пути, командлет Export-CSV перезаписывает файл без предупреждения.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-NoTypeInformation
Исключает из CSV-файла сведения о типах. По умолчанию первая строка CSV-файла содержит элемент "#TYPE ", после которого указывается полное имя типа объекта .NET Framework.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Path <string>
Задает путь к выходному CSV-файлу. Это обязательный параметр.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-UseCulture
Использовать в качестве разделителя записей разделитель элементов списка из текущей культуры. По умолчанию используется запятая (,).
Этот параметр бывает полезным в скриптах, которые распространяются среди пользователей в разных странах мира. Чтобы найти разделитель элементов списка для текущей культуры, воспользуйтесь следующей командой: (Get-Culture).TextInfo.ListSeparator.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
Comma |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Confirm
Запрашивает подтверждение перед выполнением команды.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-WhatIf
Описывает, что произойдет при выполнении команды, без ее фактического выполнения.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
System.Management.Automation.PSObject Любой объект .NET Framework можно передать командлету Export-CSV по конвейеру. |
Выходные данные |
System.String Список CSV отправляется в файл, указанный в параметре Path. |
Примечания
Командлет Export-CSV преобразует заданные объекты в набор CSV-строк переменной длины и сохраняет эти строки в указанном текстовом файле. Командлет Export-CSV позволяет сохранить объекты в CSV-файле, а затем с помощью командлета Import-CSV создать объекты на основании содержимого этого CSV-файла.
В CSV-файле каждый объект представляется списком разделенных запятыми значений свойств этого объекта. Значения свойств преобразуются в строковый формат (с помощью метода ToString() объекта), поэтому они обычно представляются именами значений свойств. Командлет Export-CSV не экспортирует методы объекта.
Получаемый в результате экспорта файл имеет следующий формат.
-- Первая строка CSV-файла содержит элемент "#TYPE", за которым следует полное имя типа объекта .NET Framework, например "#TYPE System.Diagnostics.Process". Чтобы исключить из вывода эту строку, воспользуйтесь параметром NoTypeInformation.
-- Следующая строка CSV-файла представляет заголовки столбцов. Она содержит список разделенных запятыми имен всех свойств первого объекта.
-- Оставшиеся строки файла содержат списки разделенных запятыми значений свойств каждого из объектов.
Пример 1
C:\PS>get-process wmiprvse | select-object basePriority,ID,SessionID,WorkingSet | export-csv -path data.csv Описание ----------- Эта команда выбирает несколько свойств процесса wmiprvse и экспортирует их в CSV-файл с именем data.csv.
Пример 2
C:\PS>get-process | export-csv processes.csv C:\PS> get-process | export-csv processes.csv # In processes.csv #TYPE System.Diagnostics.Process __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,... Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS... Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\... Описание ----------- Эта команда экспортирует объекты, представляющие процессы компьютера, в файл Processes.csv в текущем каталоге. Поскольку в команде не указан разделитель, для отделения друг от друга полей в файле используется запятая (,).
Пример 3
C:\PS>get-process | export-csv processes.csv -Delimiter ";" # In processes.csv #TYPE System.Diagnostics.Process __NounName;Name;Handles;VM;WS;PM;NPM;Path;Company;CPU;FileVersion;... Process;powershell;626;201666560;76058624;61943808;11960;C:\WINDOWS... Process;powershell;257;151920640;38322176;37052416;7836;C:\WINDOWS\... Описание ----------- Эта команда экспортирует объекты, представляющие процессы компьютера, в файл Processes.csv в текущем каталоге. Параметр Delimiter используется в этой команде для указания разделителя в виде точки с запятой (;). В результате поля в файле разделены знаком точки с запятой.
Пример 4
C:\PS>get-process | export-csv processes.csv -UseCulture Описание ----------- Эта команда экспортирует объекты, представляющие процессы компьютера, в файл Processes.csv в текущем каталоге. В этой команде параметр UseCulture используется для того, чтобы командлет Export-CSV использовал в качестве разделителя значение свойства ListSeparator текущей культуры.
Пример 5
C:\PS>get-process | export-csv processes.csv -NoTypeInformation C:\PS> get-process | export-csv processes.csv -NoTypeInformation # In processes.csv __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,... Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS... Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\... Описание ----------- Эта команда экспортирует объекты, представляющие процессы компьютера, в файл Processes.csv в текущем каталоге. Чтобы исключить из файла вывода сведения о типе, используется параметр NoTypeInformation.