Я застрял на чем-то и не могу понять, в чем проблема. У меня есть команда, которая генерирует текст в формате CSV для вывода. Я успешно преобразовал вывод CSV в объект Powershell с помощью ConvertFrom-CSV. Все отлично работает! Я хотел применить некоторое произвольное форматирование, поэтому я хотел преобразовать объект в произвольное имя pstype. Я не могу заставить его изменить тип. ConvertFrom-CSV выводит объект PSCustomObject, поэтому я подумал, что это будет легко, но пока безуспешно.
Мой код:
##This would be a function "get-devices" that creates command text and outputs the CSV output
##This all works properly
function get-devices {
$Command.Invoke() | ConvertFrom-Csv
}
$GAMOBJ = get-devices
$GAMOBJ.PSObject.TypeNames.Insert(0,"System.Gam.Device")
$GAMOBJ
Объект печатается правильно, но все еще как PSCustomObject
, таким образом, форматирование не применяется. Чего мне не хватает?
Любая помощь приветствуется, спасибо заранее.
Вот вывод от Get-Member:
TypeName: Selected.System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
AssetID NoteProperty System.String AssetID=ASSETID
Expiration NoteProperty System.String Expiration=2000-01-01
Location NoteProperty System.String Location=LOCATION
Model NoteProperty System.String Model=CHROMEBOOKMODEL
OU NoteProperty System.String OU=/
Serial NoteProperty System.String Serial=123456
Status NoteProperty System.String Status=ACTIVE
Кто-то добавил ниже, что я имел отфильтровал объект с помощью Select-Object. Я удалил объект select, и тип члена не изменился.
TypeName: System.Management.Automation.PSCustomObject