Você pode usar o provedor WinNT ADSI para fazer isso:
$lanman = [adsi]"WinNT://server123/lanmanserver,fileservice"
$lanman.children | foreach {[string]($_.name + "'t" + $_.path)}
Eu preciso de uma maneira de enumerar os compartilhamentos SMB de um sistema remoto não-Windows enquanto estiver usando o PowerShell no meu sistema Windows 7.
O servidor de arquivos que estou verificando não está executando um sistema operacional Windows. No entanto, eu preciso obter uma lista dos compartilhamentos SMB nesse servidor usando o PowerShell no meu sistema Windows 7 para que eu possa passar a lista para processamento adicional em um script.
A maioria das soluções que encontrei para enumerar compartilhamentos SMB em sistemas remotos com o PowerShell usam uma das duas opções que não estão disponíveis para mim.
Quais outras opções eu tenho aqui?
Assumir baunilha Windows 7 SP 1. Softwares / módulos de terceiros não são uma opção. O PowerShell 4.0 está disponível para mim, mas a compatibilidade até 2.0 é a preferida.
Você pode usar o provedor WinNT ADSI para fazer isso:
$lanman = [adsi]"WinNT://server123/lanmanserver,fileservice"
$lanman.children | foreach {[string]($_.name + "'t" + $_.path)}
Tags windows-7 smb powershell