Desejo acessar um compartilhamento de rede SMB remoto \\SHARE-HOST\
sem mapear uma letra de unidade. Eu posso fazer isso manualmente no Windows digitando \\SHARE-HOST\Share_folder\
no explorer. Se eu quiser fazer isso programaticamente, tenho que usar o net use
comando Isso exige que eu especifique uma carta.
windows
powershell
network-share
drive
ServerAdminGuy45
fonte
fonte
Set-Location \\SHARE-HOST\Share-folder
não funciona no Powershell para você? Existe uma mensagem de erro?net use * \\share\folder
vai usar a próxima letra livre no disco (a partir deZ:
)Respostas:
O PowerShell suporta totalmente caminhos UNC; você pode usá-los em qualquer lugar em que um diretório ou nome de arquivo seja esperado:
Set-Location \\servername\sharename
Get-ChildItem \\servername\sharename
Copy-Item \\servername1\sharename1\filename.ext \\servername2\sharename2
Remove-Item \\servername\sharename\foldername\filename.ext
No entanto, você precisa de direitos de acesso adequados para realmente se conectar ao compartilhamento remoto; isso significa que sua conta de usuário já deve ter as permissões necessárias ou você deve estabelecer manualmente uma conexão de rede com o servidor remoto antes de acessar pastas e arquivos nele.
Consulte também aqui: /programming/303045/connecting-to-a-network-folder-with-username-password-in-powershell .
fonte
Get-ChildItem
menos que você altere sua localização atualSet-Location
para uma máquina remota (por exemploservername
). Possivelmente isso tem algo a ver com máquinas UAC e / win10 +, mas não tenho certeza.Você precisa “navegar” no compartilhamento, a menos que tenha que se autenticar com credenciais alternativas antes, use o seguinte:
fonte
Para acessar uma pasta compartilhada no meu laptop, basta digitar
Use aspas se o nome de uma pasta tiver espaços:
Isso me dá acesso ao sistema de arquivos do computador remoto.
cd é um alias para
Set-Location
(s. http://technet.microsoft.com/en-us/library/ee176962.aspx ) que suporta esses caminhos.No entanto, eu precisei fazer logon no computador no explorador primeiro tentando abrir o caminho lá. Então funcionou no PS também. Você provavelmente precisará adicionar credenciais de logon no PowerShell primeiro.
fonte
só quero acrescentar à resposta de massimo que também notei que, se eu estivesse em outros PSDrives, não poderia usar locais de rede, mas locais regulares funcionam bem.
Por exemplo, se estou dentro
Cert:\LocalMachine\>
ouPS HKLM:\>
não possocd \\server\share
se eu
Set-Location C:
e entãoSet-Location \\servername\share
ele funciona bem.Também descobri que não precisava mudar para o local da rede para muitos comandos. Por exemplo, eu poderia
Get-Content '\\127.0.0.1\C$\eula.1028.txt'
de C: \ fine.fonte