我使用PowerShell 5.1.14409.1012并希望使用New-PsDrive
创建网络驱动器。
为确保我创建一个尚未被用户使用的映射网络驱动器,我使用以下代码(取自here):
$used = Get-PSDrive | Select-Object -Expand Name | Where-Object { $_.Length -eq 1 }
$drive = 90..65 | ForEach-Object { [string][char]$_ } |
Where-Object { $used -notcontains $_ } |
Select-Object -First 1
如果我运行Get-PSDrive | Select-Object -Expand Name | Where-Object { $_.Length
-eq 1 }
,则会显示以下内容:
C
D
E
P
Q
T
U
V
W
X
Y
Z
问题是,当我选中“我的电脑”时,目前有几个驱动器号已断开连接:
正如您所看到的,Get-PSDrive
没有选择断开连接的网络驱动器(例如" S"驱动器),当我尝试连接到它时,这会产生以下错误:
捕获断开的网络驱动器最好的是什么?
答案 0 :(得分:0)
`Net Use'中已存在类似功能:(键入星号(*)而不是特定设备名称以指定下一个可用设备名称。)
获取实际选定的驱动器名称:
$Drive = (net use * \\Server\Share)[0][6]
您可能还会考虑使用Get-WMIObject来查找正在使用的驱动器:
Get-WMIObject -query "Select * From Win32_LogicalDisk Where DriveType = 4" | Select-Object -Expand DeviceID