使用PowerShell获取映射网络驱动器的方法很少。
CMD命令方法。
您可以在PowerShell中使用cmd命令net use来获取映射的驱动器。
net use
输出结果
PS C:\WINDOWS\system32> net use New connections will be remembered. Status Local Remote Network ------------------------------------------------------------------------------- OK K: \\localhost\shared folder Microsoft Windows Network OK L: \\localhost\Shared Microsoft Windows Network The command completed successfully.
要在远程计算机上获取映射的驱动器,
Invoke-Command -ComputerName RemoteComputer -ScriptBlock{Net use}
要么
Invoke-Command -ComputerName RemoteComputer -ScriptBlock{Invoke-Expression -Command "Net use"}
PowerShell WMI和CimInstance方法。
您还可以使用具有类名Win32_MappedLogicalDisk的PowerShell WMI方法来获取本地计算机上的映射网络驱动器。
Get-WmiObject -ClassName Win32_MappedLogicalDisk | Select PSComputerName, Name,ProviderName PSComputerName Name ProviderName -------------- ---- ------------ DESKTOP-9435KM9 K: \\localhost\shared folder DESKTOP-9435KM9 L: \\localhost\Shared
要在远程计算机上获得相同的信息。
Get-WmiObject -ClassName Win32_MappedLogicalDisk –ComputerName RemoteComputer | Select PSComputerName, Name,ProviderName
使用CIM方法。
Get-CimInstance -ClassName Win32_MappedLogicalDisk | Select SystemName, DeviceID, ProviderName
在远程系统上。
Get-CimInstance -ClassName Win32_MappedLogicalDisk –ComputerName RemoteSystem | Select SystemName, DeviceID, ProviderName
Get-PSDrive方法。
在本地计算机上,您可以运行Get-PSDrive PowerShell cmdlet,但它将获取所有可用的驱动器。为了获得网络驱动器,我们需要对输出进行如下过滤。
Get-PSDrive | where{$_.DisplayRoot -match "\\"}
输出结果
Name Used (GB) Free (GB) Provider Root ---- --------- --------- -------- ---- K 318.16 47.24 FileSystem \\localhost\shared folder M 286.07 79.36 FileSystem \\localhost\Shared Folder
在远程计算机上获取映射的驱动器。
Invoke-Command –ComputerName RemoteComputer -ScriptBlock{Get-PSDrive | where{$_.DisplayRoot -match "\\"}}