Board logo

标题: [转载代码] [PowerShell每日技巧]获取系统信息(20140320) [打印本页]

作者: DAIC    时间: 2014-3-26 10:12     标题: [PowerShell每日技巧]获取系统信息(20140320)

If you just want to profile a local or remote system and get back the most commonly used pieces of information, then do not waste time for your own solutions. Simply reuse systeminfo.exe, and feed the data into PowerShell:
  1. function Get-SystemInfo
  2. {
  3.   param($ComputerName = $env:COMPUTERNAME)
  4.   $header = 'Hostname','OSName','OSVersion','OSManufacturer','OSConfiguration','OS Build Type','RegisteredOwner','RegisteredOrganization','Product ID','Original Install Date','System Boot Time','System Manufacturer','System Model','System Type','Processor(s)','BIOS Version','Windows Directory','System Directory','Boot Device','System Locale','Input Locale','Time Zone','Total Physical Memory','Available Physical Memory','Virtual Memory: Max Size','Virtual Memory: Available','Virtual Memory: In Use','Page File Location(s)','Domain','Logon Server','Hotfix(s)','Network Card(s)'
  5.   systeminfo.exe /FO CSV /S $ComputerName |
  6.     Select-Object -Skip 1 |
  7.     ConvertFrom-CSV -Header $header
  8. }
复制代码
When you store the result in a variable, you can easily access individual pieces of information:

PS> $info = Get-SystemInfo
PS> $info.Hostname
BatHome

PS> $info.'Logon Server'
\\BatHome

PS> $info.'System Boot Time'
03/26/2014 11:25:10


If you like the information to be called differently, simply change the list of property names to your liking. So if you do not like "System Boot Time", simply rename this label in the script to "BootTime", for example.

http://powershell.com/cs/blogs/tips/archive/2014/03/20/profiling-systems.aspx




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2