Эквивалент чистого использования (для перечисления соединений с компьютером) в powershell? - PullRequest
7 голосов
/ 10 ноября 2011

Согласно справке Windows NET USE, при использовании без параметров выводит список подключений компьютера.

Я бы хотел найти способ в PowerShell получить список записей Remote в выводе net use.

Я знаю, что в качестве крайней меры я могу проанализировать результат "сама команда net use ", но я бы предпочел не полагаться на текстовый вывод этой команды.

Кто-нибудь может мне помочь?спасибо

Мишель

Status       Local     Remote                    Network  
-------------------------------------------------------------------------------  
OK                     \\SERVER02\example          Microsoft Windows Network  
OK                     \\SERVER02\prova            Microsoft Windows Network  
Disconnected           \\SERVER03\test             Microsoft Windows Network  
OK                     \\SERVER02\remoteshare      Microsoft Windows Network  
Disconnected           \\SERVER03\remoteshare   

1 Ответ

11 голосов
/ 10 ноября 2011

Для подключенного логического диска вы можете использовать класс WMI Win32_MappedLogicalDisk :

Get-WmiObject Win32_MappedLogicalDisk

Вот еще один способ с Win32_LogicalDisk :

PS C:\> Get-WmiObject -Query "Select * From Win32_LogicalDisk Where DriveType = 4"

DeviceID     : V:
DriveType    : 4
ProviderName : \\jpbdellf1\c$
FreeSpace    :
Size         :
VolumeName   :

1012 * Отредактировано *

Вы правы, вы можете получить то, что вам нужно, с помощью Win32_NetworkConnection :

PS > Get-WmiObject Win32_NetworkConnection

LocalName                     RemoteName                    ConnectionState               Status
---------                     ----------                    ---------------               ------
                              \\jpbasusf1\temp              Connected                     OK

На Seven или W2K8 будьте осторожны, чтобы вызывать это с тем же пользователем, который запускает NET USE, потому что это информация о сеансе.

...