Répertorie les lecteurs réseau mappés de la ligne de commande au fichier texte

75

Existe-t-il une commande pouvant être utilisée à partir de la ligne de commande pour générer une liste des lecteurs réseau mappés sur le système local et leur emplacement sur le réseau dans un fichier texte?

Cela ne sera utilisé que sur les systèmes Windows exécutant Windows XP.

Peter Mortensen
la source

Réponses:

101

net use > mapped_drives.txt devrait vider une liste de lecteurs mappés dans le fichier texte mapped_drives.txt

texte alternatif

Bien que cela ait été testé sur Windows 7, Microsoft indique que net use cela fonctionnera sous Windows XP

Sathyajith Bhat
la source
@MaterialEdge: Bienvenue!
Sathyajith Bhat
2
Je peux confirmer que cela fonctionne sur Windows XP.
Peter Mortensen
Où se trouve le fichier txt?
G Flores
2
@GeorgeLaed, ce sera au même endroit que celui où vous avez exécuté la commande
Sathyajith Bhat
Remarque: sous Windows 8 et supérieur, cela ne fonctionnera pas dans une invite de commande avec privilèges élevés (exécuté en tant qu'administrateur) car son contexte de sécurité est différent. Ouvrez une invite de commande "normale" pour exécuter la commande.
GreatAndPowerfulOz
11

NET USEaffichait uniquement les lecteurs mappés pour mon utilisateur actuel et ma connexion actuelle. Après quelques recherches supplémentaires, je suis arrivé ici :

Les informations de mappage de lecteur sont stockées dans le registre. Recherchez dans HKEY_USERS \ USER \ Network.

J'ai donc fait la reg query HKEY_USERSliste des utilisateurs (qui étaient des codes Windows), puis je les ai interrogés individuellement, par exemple:

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

Si vous les interrogez tous, vous obtenez tous les mappages pour tous les utilisateurs.

msb
la source
6

Enregistrez le fichier suivant en tant que fichier .vbs et exécutez-le. Cela créera un fichier MappedDrives.txt dans le dossier à partir duquel le fichier vbs est exécuté. Vous pouvez remplacer le strComptuer par le nom d'un autre ordinateur et obtenir également la liste d'un ordinateur distant.

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
Ƭᴇcʜιᴇ007
la source
Woah. C'est mauvais cul. Aucune idée qu'il était possible (1) d'écrire une requête pour les lecteurs et (2) de le faire à distance. Super post.
Kevin