在PowerShell中,如何确定驱动器的根目录(假设它是网络驱动器)
时间:2020-03-06 14:59:07 来源:igfitidea点击:
在PowerShell中,即使有可能知道驱动器是否是网络驱动器:请参见在PowerShell中,如何确定当前驱动器是否是网络驱动器?
当我尝试获取驱动器的"根"时,我找回了驱动器号。
设置:
MS-Dos的"网络使用情况"表明H:实际上是一个映射的网络驱动器:
New connections will be remembered. Status Local Remote Network ------------------------------------------------------------------------------- OK H: \spma1fp1\JARAVJ$ Microsoft Windows Network The command completed successfully.
Get-PSDrive告诉我们根是H:
PS:24 H:\temp >get-psdrive h Name Provider Root CurrentLocation ---- -------- ---- --------------- H FileSystem H:\ temp
并且使用system.io.driveinfo不能给我们完整的答案:
PS:13 H:\ >$x = new-object system.io.driveinfo("h:\") PS:14 H:\ >$x.DriveType Network PS:15 H:\ >$x.RootDirectory Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 29/09/2008 16:45 h:\
关于如何获取该信息的任何想法吗?
谢谢
解决方案
尝试WMI:
Get-WMIObject -query "Select ProviderName From Win32_LogicalDisk Where DeviceID='H:'"
$ drive = gwmi win32_logicaldisk -filter" DeviceID ='H:'"
if($ drive.DriveType -eq 4){写主机"驱动器是网络共享"}
$ fso = new-object -com" Scripting.Filesystemobject"
$ fso.GetDrive(" Y")。ShareName