当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 测试 64 位操作系统

作者:精品下载站 日期:2024-12-14 07:38:54 浏览:14 分类:玩电脑

测试 64 位操作系统


PowerShell 的一大特色是您可以通过相对简单的一行命令获得很多信息。例如。您可能想测试计算机是否运行 64 位操作系统。您可以使用像这样简单的命令来查找。

PS C:\> (get-wmiobject win32_operatingsystem -comp chi-dc01).OsArchitecture -match "64"
True
PS C:\> (get-wmiobject win32_operatingsystem -comp novo8).OsArchitecture -match "64"
False

如果您运行的是 PowerShell 3,则可以替换 Get-CimInstance。对于这个特定的类,需要注意的一件事是 OSArchitecture 属性在 Windows Server 2003 等较旧的操作系统上无效。您会遇到异常。

[玩转系统] 测试 64 位操作系统

在本例中,我修改了 WMI 查询以仅返回不存在的 OSArchitecture 属性。否则我就会得到错误的结果,而这可能并不完全正确。当然,我总是得意忘形,所以在我意识到之前我已经把这一行命令变成了一个函数。

#requires -version 2.0

Function Test-Is64Bit {
[cmdletbinding()]

Param(
[ValidateNotNullorEmpty()]
[string]$Computername=$env:computername,
[Alias("RunAs")]
[System.Management.Automation.Credential()]$Credential = [System.Management.Automation.PSCredential]::Empty
)

Try {
  #hash table of parameters to splat
  $wmiParams = @{
    Class = 'win32_operatingsystem'
    Property = 'osarchitecture'
    ComputerName = $computername
    ErrorAction = 'Stop'
  }
  if ($credential) {
    Write-Verbose "Adding credential"
    $wmiParams.Add("Credential",$Credential)
  }
  Write-Verbose "Testing $computername"
  $data = Get-WmiObject @wmiParams
  Write-Verbose $data.OSArchitecture
  $data.OsArchitecture -match "64"

} #try

Catch {
  Switch -wildcard ($error[0].Exception.Message) {
   "The RPC Server*" { 
      Write-Warning "Can't connect to server. Verify name and availability." 
      }
   "Access is denied*" {
      Write-Warning "Access denied. Check your permissions."
      }
   "Invalid query*" {
      Write-Warning "WMI information not available. OS version may Windows 2003 or earlier."
      }
  Default { 
    Write-Error $error[0]
    }
  } #switch
} #catch

Finally {
    Write-Verbose "Finished testing"
} #finally

} #close function

该函数采用计算机名和可选的 PSCredential。您可以使用已保存的 PSCredential 对象或指定名称,系统将提示您。

[玩转系统] 测试 64 位操作系统

[玩转系统] 测试 64 位操作系统

您没有理由不能使用单行线。但是,如果您想增加一点健壮性并创建一个可重用的工具,那么将其变成一个简单的函数并不需要太多。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯