是否有一个命令可以从命令行使用,将本地系统上映射的网络驱动器列表及其在网络上的位置输出到文本文件中?
这仅适用于运行 Windows XP 的基于 Windows 的系统。
答案1
net use > mapped_drives.txt
应将映射驱动器列表转储到文本文件中mapped_drives.txt
虽然我在 Windows 7 上测试过,微软表示 net use
适用于 Windows XP
答案2
NET USE
只显示当前用户和当前连接的映射驱动器。经过一番谷歌搜索后,我找到了这里:
驱动器映射信息存储在注册表中,查看 HKEY_USERS\USER\Network
因此我列出了reg query HKEY_USERS
用户(一些 Windows 代码),然后单独查询了所有用户,例如:
reg query HKEY_USERS\S-1-5-21-4205028929-649740040-1951280400-500\Network /s
如果您查询所有这些,那么您将获得所有用户的所有映射。
答案3
将以下内容保存为 .vbs 文件并运行。它将在运行 vbs 文件的文件夹中创建一个 MappedDrives.txt。您可以将 strComptuer 替换为另一台计算机的名称,并从远程计算机中获取列表。
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objOutFile = objFSO.CreateTextFile(".\MappedDrives.txt")
Set colDrives = objWMIService.ExecQuery _
("Select * From Win32_LogicalDisk Where DriveType = 4")
For Each objDrive in colDrives
objOutFile.WriteLine(objDrive.DeviceID & " (" & _
objDrive.ProviderName & ")")
Next
objOutFile.Close
答案4
以下 cmd(以管理员身份运行)将显示所有用户的所有驱动器映射(从注册表中提取信息)
for /f "tokens=1* delims=" %i in ('reg query HKEY_USERS /f S* /k /v ^| findstr /v /c:"End of search"')do @echo. & @( reg query "%i\Volatile Environment" /s /f USERNAME /v 2>NUL & @reg query %i\Network /f RemotePath /s 2>NUL )| findstr /r /v /c:"End of search" /c:"^$" /c:"Volatile"