1

I want to backup the state of my mapped drives in Windows 7 Ent. I'm not trying to backup the contents of the drives, only the paths and assigned letters.

Say I had to perform a reinstall of Windows, I want to be able to restore all my mapped drives to the same drive letters, so //network-path/foldername/ will still be assigned to F:\ when restored.

  • To do it from a cmd line or bat file. – bvaughn Jul 26 '16 at 14:42
  • 1
    net use >Save_My_Drive_Map.txt – bvaughn Jul 26 '16 at 14:44
2

You have a couple/few options. Here's two:

If these are persistent drives you've mapped yourself, then entries for them should be stored in the registry under HKEY_CURRENT_USER\Network.

You could use Reg Export HKEY_CURRENT_USER\Network c:\temp\drives.reg from a command-line to export the key to a file, and then use reg import to import it again in the future.

For more info on that, check out this existing SU question:

Where does windows store network drive mappings?

If the drives are not persistent, you could use a script to output the list to a file, and use another script to import that file and create drives from it later.

Using PowerShell to do this isn't too hard; you could use something like the following...

Exporting:

# Define array to hold identified mapped drives.
$mappedDrives = @()

# Get a list of the drives on the system, including only FileSystem type drives.
$drives = Get-PSDrive -PSProvider FileSystem

# Iterate the drive list
foreach ($drive in $drives) {
    # If the current drive has a DisplayRoot property, then it's a mapped drive.
    if ($drive.DisplayRoot) {
        # Exctract the drive's Name (the letter) and its DisplayRoot (the UNC path), and add then to the array.
        $mappedDrives += Select-Object Name,DisplayRoot -InputObject $drive
    }
}

# Take array of mapped drives and export it to a CSV file.
$mappedDrives | Export-Csv mappedDrives.csv

Importing:

# Import drive list.
$mappedDrives = Import-Csv mappedDrives.csv

# Iterate over the drives in the list.
foreach ($drive in $mappedDrives) {
    # Create a new mapped drive for this entry.
    New-PSDrive -Name $drive.Name -PSProvider "FileSystem" -Root $drive.DisplayRoot -Persist -ErrorAction Continue 
}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.