{"id":1542,"date":"2011-07-04T10:43:24","date_gmt":"2011-07-04T14:43:24","guid":{"rendered":"http:\/\/jdhitsolutions.com\/blog\/?p=1542"},"modified":"2011-07-04T10:43:24","modified_gmt":"2011-07-04T14:43:24","slug":"get-properties-with-values","status":"publish","type":"post","link":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/","title":{"rendered":"Get Properties with Values"},"content":{"rendered":"<p>One of my nuisance issues when using WMI with Windows PowerShell, is that when looking at all properties I have to wade though many that have no value. I'd prefer to only view properties that have a populated value. Here's one way.<!--more--><\/p>\n<p>Every WMI object has a property called Properties that is a collection of just what you would expect, properties. <\/p>\n<p>[cc lang=\"PowerShell\"]<br \/>\nPS S:\\> gwmi win32_computersystem | Select Properties<\/p>\n<p>Properties<br \/>\n----------<br \/>\n{AdminPasswordStatus, AutomaticManagedPagefile, AutomaticResetBootOption, AutomaticResetCapability...}<br \/>\n[\/cc]<\/p>\n<p>Because this is a collection, we can use Select-Object's ExpandProperty parameter.<\/p>\n<p>[cc lang=\"PowerShell\"]<br \/>\nPS S:\\> gwmi win32_computersystem | Select -ExpandProperty Properties | select -first 2<\/p>\n<p>Name       : AdminPasswordStatus<br \/>\nValue      : 0<br \/>\nType       : UInt16<br \/>\nIsLocal    : True<br \/>\nIsArray    : False<br \/>\nOrigin     : Win32_ComputerSystem<br \/>\nQualifiers : {CIMTYPE}<\/p>\n<p>Name       : AutomaticManagedPagefile<br \/>\nValue      : False<br \/>\nType       : Boolean<br \/>\nIsLocal    : True<br \/>\nIsArray    : False<br \/>\nOrigin     : Win32_ComputerSystem<br \/>\nQualifiers : {CIMTYPE}<br \/>\n[\/cc]<\/p>\n<p>The object gives me the property name and any value. This means I can construct a PowerShell expression like this:<\/p>\n<p>[cc lang=\"PowerShell\"]<br \/>\nPS S:\\> gwmi win32_computersystem | Select -ExpandProperty Properties | where {$_.value} | select Name,Value<\/p>\n<p>Name                                                                                                              Value<br \/>\n----                                                                                                              -----<br \/>\nAutomaticResetBootOption                                                                                           True<br \/>\nAutomaticResetCapability                                                                                           True<br \/>\nBootOptionOnLimit                                                                                                     3<br \/>\nBootOptionOnWatchDog                                                                                                  3<br \/>\nBootROMSupported                                                                                                   True<br \/>\nBootupState                                                                                                 Normal boot<br \/>\nCaption                                                                                                        SERENITY<br \/>\nChassisBootupState                                                                                                    3<br \/>\nCreationClassName                                                                                  Win32_ComputerSystem<br \/>\nCurrentTimeZone                                                                                                    -240<br \/>\nDaylightInEffect                                                                                                   True<br \/>\nDescription                                                                                            AT\/AT COMPATIBLE<br \/>\nDNSHostName                                                                                                    SERENITY<br \/>\nDomain                                                                                                        WORKGROUP<br \/>\nEnableDaylightSavingsTime                                                                                          True<br \/>\nFrontPanelResetStatus                                                                                                 3<br \/>\nKeyboardPasswordStatus                                                                                                3<br \/>\nManufacturer                                                                                                    TOSHIBA<br \/>\nModel                                                                                                       Qosmio X505<br \/>\nName                                                                                                           SERENITY<br \/>\nNetworkServerModeEnabled                                                                                           True<br \/>\nNumberOfLogicalProcessors                                                                                             8<br \/>\nNumberOfProcessors                                                                                                    1<br \/>\nOEMStringArray                                              ...          , Bd-BtD7SW5M3i, bM5oVNHGZz+S9, yGkIbhav0zUFP}<br \/>\nPauseAfterReset                                                                                              3932100000<br \/>\nPCSystemType                                                                                                          2<br \/>\nPowerSupplyState                                                                                                      3<br \/>\nPrimaryOwnerName                                                                                       Prof. Powershell<br \/>\nResetCapability                                                                                                       1<br \/>\nResetCount                                                                                                           -1<br \/>\nResetLimit                                                                                                           -1<br \/>\nRoles                                                                        {LM_Workstation, LM_Server, SQLServer, NT}<br \/>\nStatus                                                                                                               OK<br \/>\nSystemType                                                                                                 x64-based PC<br \/>\nThermalState                                                                                                          3<br \/>\nTotalPhysicalMemory                                                                                          8577855488<br \/>\nUserName                                                                                                  SERENITY\\Jeff<br \/>\nWakeUpType                                                                                                            6<br \/>\nWorkgroup                                                                                                     WORKGROUP<br \/>\n[\/cc]<\/p>\n<p>All I've done is pipe the collection of properties to Where-Object which is filtering out any objects that do not have a value. This is the type of thing where a scriptblock or function would come in handy.<\/p>\n<p>[cc lang=\"PowerShell\"]<br \/>\nPS S:\\> $wmi={Param([string]$class) gwmi $class | Select -ExpandProperty Properties | where {$_.value} | Select Name,Value}<br \/>\nPS S:\\> &$wmi win32_bios<\/p>\n<p>Name                                                        Value<br \/>\n----                                                        -----<br \/>\nBiosCharacteristics                                         {4, 7, 8, 9...}<br \/>\nBIOSVersion                                                 {TOSQCI - 6040000, Ver 1.00PARTTBL}<br \/>\nCaption                                                     Ver 1.00PARTTBL<br \/>\nDescription                                                 Ver 1.00PARTTBL<br \/>\nManufacturer                                                TOSHIBA<br \/>\nName                                                        Ver 1.00PARTTBL<br \/>\nPrimaryBIOS                                                 True<br \/>\nReleaseDate                                                 20101210000000.000000+000<br \/>\nSerialNumber                                                Z9131790W<br \/>\nSMBIOSBIOSVersion                                           V2.90<br \/>\nSMBIOSMajorVersion                                          2<br \/>\nSMBIOSMinorVersion                                          6<br \/>\nSMBIOSPresent                                               True<br \/>\nSoftwareElementID                                           Ver 1.00PARTTBL<br \/>\nSoftwareElementState                                        3<br \/>\nStatus                                                      OK<br \/>\nVersion                                                     TOSQCI - 6040000<br \/>\n[\/cc]<\/p>\n<p>I'll let you play with this and add support for remote computers or alternate credentials.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of my nuisance issues when using WMI with Windows PowerShell, is that when looking at all properties I have to wade though many that have no value. I&#8217;d prefer to only view properties that have a populated value. Here&#8217;s one way.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[4,75,19],"tags":[534,82,302,301,547],"class_list":["post-1542","post","type-post","status-publish","format-standard","hentry","category-powershell","category-powershell-v2-0","category-wmi","tag-powershell","tag-scriptblock","tag-select-object","tag-where-object","tag-wmi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Get Properties with Values &#8226; The Lonely Administrator<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Get Properties with Values &#8226; The Lonely Administrator\" \/>\n<meta property=\"og:description\" content=\"One of my nuisance issues when using WMI with Windows PowerShell, is that when looking at all properties I have to wade though many that have no value. I&#039;d prefer to only view properties that have a populated value. Here&#039;s one way.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/\" \/>\n<meta property=\"og:site_name\" content=\"The Lonely Administrator\" \/>\n<meta property=\"article:published_time\" content=\"2011-07-04T14:43:24+00:00\" \/>\n<meta name=\"author\" content=\"Jeffery Hicks\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JeffHicks\" \/>\n<meta name=\"twitter:site\" content=\"@JeffHicks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeffery Hicks\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/\"},\"author\":{\"name\":\"Jeffery Hicks\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"headline\":\"Get Properties with Values\",\"datePublished\":\"2011-07-04T14:43:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/\"},\"wordCount\":388,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"keywords\":[\"PowerShell\",\"ScriptBlock\",\"Select-Object\",\"Where-Object\",\"WMI\"],\"articleSection\":[\"PowerShell\",\"PowerShell v2.0\",\"WMI\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/\",\"url\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/\",\"name\":\"Get Properties with Values &#8226; The Lonely Administrator\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#website\"},\"datePublished\":\"2011-07-04T14:43:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/powershell\\\/1542\\\/get-properties-with-values\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"PowerShell\",\"item\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/category\\\/powershell\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get Properties with Values\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/\",\"name\":\"The Lonely Administrator\",\"description\":\"Practical Advice for the Automating IT Pro\",\"publisher\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\",\"name\":\"Jeffery Hicks\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"caption\":\"Jeffery Hicks\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Get Properties with Values &#8226; The Lonely Administrator","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/","og_locale":"en_US","og_type":"article","og_title":"Get Properties with Values &#8226; The Lonely Administrator","og_description":"One of my nuisance issues when using WMI with Windows PowerShell, is that when looking at all properties I have to wade though many that have no value. I'd prefer to only view properties that have a populated value. Here's one way.","og_url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/","og_site_name":"The Lonely Administrator","article_published_time":"2011-07-04T14:43:24+00:00","author":"Jeffery Hicks","twitter_card":"summary_large_image","twitter_creator":"@JeffHicks","twitter_site":"@JeffHicks","twitter_misc":{"Written by":"Jeffery Hicks","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/#article","isPartOf":{"@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/"},"author":{"name":"Jeffery Hicks","@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"headline":"Get Properties with Values","datePublished":"2011-07-04T14:43:24+00:00","mainEntityOfPage":{"@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/"},"wordCount":388,"commentCount":0,"publisher":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"keywords":["PowerShell","ScriptBlock","Select-Object","Where-Object","WMI"],"articleSection":["PowerShell","PowerShell v2.0","WMI"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/","url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/","name":"Get Properties with Values &#8226; The Lonely Administrator","isPartOf":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#website"},"datePublished":"2011-07-04T14:43:24+00:00","breadcrumb":{"@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1542\/get-properties-with-values\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"PowerShell","item":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},{"@type":"ListItem","position":2,"name":"Get Properties with Values"}]},{"@type":"WebSite","@id":"https:\/\/jdhitsolutions.com\/blog\/#website","url":"https:\/\/jdhitsolutions.com\/blog\/","name":"The Lonely Administrator","description":"Practical Advice for the Automating IT Pro","publisher":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jdhitsolutions.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9","name":"Jeffery Hicks","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","url":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","caption":"Jeffery Hicks"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":639,"url":"https:\/\/jdhitsolutions.com\/blog\/scripting\/639\/join-object\/","url_meta":{"origin":1542,"position":0},"title":"Join Object","author":"Jeffery Hicks","date":"May 14, 2010","format":false,"excerpt":"Related to some of the WMI stuff I\u2019ve been working on lately is the idea of melding or joining objects. This comes about because I often see forum posts from administrators looking to collect information from different WMI classes but present it as a single object. One way you might\u2026","rel":"","context":"In &quot;PowerShell v2.0&quot;","block_context":{"text":"PowerShell v2.0","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell-v2-0\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":636,"url":"https:\/\/jdhitsolutions.com\/blog\/scripting\/636\/select-wmi\/","url_meta":{"origin":1542,"position":1},"title":"Select WMI","author":"Jeffery Hicks","date":"May 13, 2010","format":false,"excerpt":"I\u2019ve been helping out on some WMI and PowerShell issues in the forums at ScriptingAnswers.com. As I was working on a problem I ended up taking a slight detour to address an issue that has always bugged me. When I run a command like this: get-wmiobject -query \"Select Name,Description,Disabled from\u2026","rel":"","context":"In &quot;PowerShell v2.0&quot;","block_context":{"text":"PowerShell v2.0","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell-v2-0\/"},"img":{"alt_text":"selectwmi","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2010\/05\/selectwmi-300x89.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1603,"url":"https:\/\/jdhitsolutions.com\/blog\/scripting\/1603\/select-object-properties-with-values\/","url_meta":{"origin":1542,"position":2},"title":"Select Object Properties with Values","author":"Jeffery Hicks","date":"August 16, 2011","format":false,"excerpt":"Here's another concept I know I've written about in the past but that needed an update. A common technique I use when exploring and discovering objects is to pipe the object to Select-Object specifying all properties, get-service spooler | select *. There's nothing wrong with this approach but depending on\u2026","rel":"","context":"In &quot;PowerShell v2.0&quot;","block_context":{"text":"PowerShell v2.0","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell-v2-0\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1687,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/1687\/filter-left\/","url_meta":{"origin":1542,"position":3},"title":"Filter Left","author":"Jeffery Hicks","date":"October 14, 2011","format":false,"excerpt":"When writing WMI queries expressions in Windows PowerShell, it is recommended to use WMI filtering, as opposed to getting objects and then filtering with Where-Object. I see expressions like this quite often: [cc lang=\"PowerShell\"] get-wmiobject win32_process -computer $c | where {$_.name -eq \"notepad.exe\"} [\/cc] In this situation, ALL process objects\u2026","rel":"","context":"In &quot;Best Practices&quot;","block_context":{"text":"Best Practices","link":"https:\/\/jdhitsolutions.com\/blog\/category\/best-practices\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2011\/10\/talkbubble.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2241,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/2241\/skipping-wmi-system-properties-in-powershell\/","url_meta":{"origin":1542,"position":4},"title":"Skipping WMI System Properties in PowerShell","author":"Jeffery Hicks","date":"April 25, 2012","format":false,"excerpt":"One of my favorite techniques when using WMI in PowerShell is to pipe an object to Select-Object and select all properties. Try this: get-wmiobject win32_bios | select * It works, but it also gets all of the system properties like __PATH which I rarely care about. I also get other\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":654,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/654\/new-wmi-object\/","url_meta":{"origin":1542,"position":5},"title":"New WMI Object","author":"Jeffery Hicks","date":"May 17, 2010","format":false,"excerpt":"I have one more variation on my recent theme of working with WMI objects. I wanted to come up with something flexible and re-usable where you could specify a WMI class and some properties and get a custom object with all the classes combined. My solution is a function called\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/1542","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/comments?post=1542"}],"version-history":[{"count":0,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/1542\/revisions"}],"wp:attachment":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/media?parent=1542"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/categories?post=1542"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/tags?post=1542"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}