我正面临着一个问题,其结果是getdrive不准确。懵懵懂懂。PowerShell错误的总大小结果
正如下面的截图所示,10.1.105.203的总空间为7.81TB,但是从powershell给我的数据来看,它只有大概4TB。这里很迷惑。
我正面临着一个问题,其结果是getdrive不准确。懵懵懂懂。PowerShell错误的总大小结果
正如下面的截图所示,10.1.105.203的总空间为7.81TB,但是从powershell给我的数据来看,它只有大概4TB。这里很迷惑。
你没有真正使用PowerShell的。您正在使用PowerShell的Windows脚本主机的对象模型,这是PowerShell的先驱。尝试使用两种:
C:\PS> Get-Volume
DriveLetter FileSystemLabel FileSystem DriveType HealthStatus SizeRemaining Size
----------- --------------- ---------- --------- ------------ ------------- ----
C NTFS Fixed Healthy 94.34 GB 237.96 GB
Recovery NTFS Fixed Healthy 10.19 MB 300 MB
或
C:\PS> Get-WmiObject Win32_Volume | Format-Table DriveLetter,Capacity,FreeSpace
DriveLetter Capacity FreeSpace
----------- -------- ---------
C: 255505461248 101292863488
314568704 10682368
完全同意@Keith山,用PowerShell的方式来获得结果。奇怪的行为是,对于驱动器L:
,我可以看到10Tb驱动器的总大小没问题,所以如果您从新命令中收到相同的结果,我不会感到惊讶。
接下来的事情,我会检查是否配额在您的服务器上激活。
您还可以使用:
Get-WmiObject Win32_logicaldisk -filter "driveType=4"
您也可以使用Get-PSDrive来获取驱动器的大小。
PS C:\> Get-PSDrive -PSProvider filesystem
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
C 48.92 195.13 FileSystem C:\
D 30.82 69.18 FileSystem D:\
E .12 121.49 FileSystem E:\
你总是可以做一些操作来实现这个多东西,e.g,
PS C:\> Get-PSDrive -PSProvider filesystem | select Name, @{n= 'Used(GB)' ; e = {"{0:N2}" -f ($_.used/1GB)}}, @{n= 'Free
(GB)' ; e = {"{0:N2}" -f ($_.Free/1GB)}}, @{n= 'Total(GB)' ; e = {"{0:N2}" -f (($_.used + $_.Free)/1GB)}} | ft -auto
Name Used(GB) Free(GB) Total(GB)
---- -------- -------- ---------
C 48.92 195.13 244.04
D 30.82 69.18 100.00
E 0.12 121.49 121.62
感谢您的指正。 我试图从中获取音量的驱动器是NAS,它未在win32_volume中列出。 我可以有更多的线索吗? – taesica
谢谢@凯斯希尔,我现在明白了! – taesica