通过 powershell 查询不同的空闲共享空间,但每次都得到相同的结果

通过 powershell 查询不同的空闲共享空间,但每次都得到相同的结果

这是我的代码:

$map = new-Object -com wscript.Network
$map.mapNetworkDrive("v:","\\sharespace\testbuilds\test1")
$fso = new-Object -com Scripting.FileSystemObject
$do = $fso.getdrive("v")
$do.AvailableSpace
$do.TotalSize

我本来想检查一些可用的共享空间。当我第一次运行这些代码时,我得到了正确的大小数据。但是当我更改第二行的路径时,它给我一个错误警报:

 Exception calling "MapNetworkDrive" with "2" argument(s): "The local device name is already in use."
 At D:\test2fornetworkspace.ps1:5 char:21
 + $map.mapNetworkDrive <<<< ("v:","\\sharespace\testbuilds\test1")
 + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
 + FullyQualifiedErrorId : ComMethodTargetInvocation

然后,结果出来了,总是和第一次运行的结果一样……当然,不同的共享空间有不同的可用大小。所以这是完全错误的……

为什么会发生这种情况?请帮我一下。非常感谢。

答案1

它告诉您 V:已映射。您需要删除该映射才能重新使用驱动器号 V。

在将另一个驱动器重新映射到 V 之前,您应该执行此操作:

$map.removenetworkdrive("v:")

相关内容