gpt4 book ai didi

powershell - Powershell:获取物理驱动器数量和大小

转载 作者:行者123 更新时间:2023-12-02 23:43:45 24 4
gpt4 key购买 nike

我正在尝试在多台计算机上获取物理驱动器的大小。某些计算机具有1个物理驱动器,而某些计算机具有多个物理驱动器。
我尝试了此脚本,如果我在一台计算机上本地运行它,它将运行良好。

$s = "machine name"
$counts = GET-WMIOBJECT –query "SELECT * FROM Win32_DiskDrive" -ComputerName $s
$total_disk = $counts.count
$i = 0
$total_disk = $total_disk -1
$infoObjecta = New-Object PSObject
for(; $i -le $total_disk; $i++){

$a = $i
$a = GET-WMIOBJECT –query "SELECT * FROM Win32_DiskDrive WHERE DeviceID='\\\\.\\PHYSICALDRIVE$i'" -ComputerName $s
$b = $i
$b = [math]::round($a.size /1GB)


Add-Member -inputObject $infoObjecta -memberType NoteProperty -name "Physical_Disk $i" -value $b

}

操作系统版本为Win Server 2003、2008和2012。

我不确定我在做什么错。
如果我在该计算机上本地运行此脚本,或者给计算机提供的名称是 $s变量,则它工作正常。
但是,如果我将远程计算机名称放在 $s中,则它没有给我输出。

我进行调试,发现 $counts.count不返回任何值。

请告诉我如何解决此问题或任何其他方法来获取硬盘驱动器数量和大小的详细信息。

最佳答案

在某些版本的Powershell中,如果变量为1或0,则不会返回任何内容。检查@($ counts).count是否返回值。

关于powershell - Powershell:获取物理驱动器数量和大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32373151/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com