78

Is there a command that can be used from the command line to output a list of the mapped network drives on the local system and their location on the network to a text file?

This will only be used on Windows-based systems running Windows XP.

106

net use > mapped_drives.txt should dump a list of mapped drives to the text file mapped_drives.txt

alt text

Although I tested this on Windows 7, Microsoft says net use will work on Windows XP

| improve this answer | |
  • @MaterialEdge : Welcome! – Sathyajith Bhat Apr 29 '10 at 2:20
  • 2
    I can confirm that it works on Windows XP. – Peter Mortensen Jan 8 '14 at 8:59
  • Where is the location of the txt file? – 唐龍豹 Oct 5 '16 at 1:12
  • 2
    @GeorgeLaed it will be in the same location as where you ran the command from – Sathyajith Bhat Oct 5 '16 at 5:17
  • Note, under Windows 8 and above, this will not work in an elevated (run as administrator) command prompt because it's in a different security context. Open a "normal" command prompt to execute the command. – GreatAndPowerfulOz Oct 7 '16 at 16:23
13

NET USE was only displaying the mapped drives for my current user and current connection. After some more googling, I got here:

The drive mapping info is stored in the Registry, look in HKEY_USERS\USER\Network

So I did a reg query HKEY_USERS to list the users (which were some windows codes), then I queried all of them individually, for example:

reg query HKEY_USERS\S-1-5-21-4205028929-649740040-1951280400-500\Network /s

If you query all of them, then you get all the mappings for all users.

| improve this answer | |
6

Save the following as a .vbs file and run it. It'll create a MappedDrives.txt in the folder the vbs file is run from. You can replace the strComptuer with another computer's name and get the list off of a remote computer as well.

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
| improve this answer | |
  • Woah. This is bad ass. No idea it was possible (1) to write a query for drives, and (2) to do it remotely. Awesome post. – kevinarpe Feb 26 '13 at 9:39