
Estou digitando o seguinte comando em um prompt do PowerShell:
Start-BitsTransfer -Source "\\serverA\c$\test.txt" -Destination . -TransferType Download -cred (get-credential)
Depois de digitar as credenciais corretamente, recebo:
Não é possível encontrar o caminho "\\serverA\c$\test.txt" porque ele não existe
Posso mapear \\serverA\c$ para uma unidade de rede (por exemplo, Y:\) e então o seguinte funciona:
Start-BitsTransfer -Source "Y:\\test.txt" -Destination . -TransferType Download
Mas isso não é desejável porque preciso da capacidade de baixar arquivos de mais de 26 servidores ao mesmo tempo, o que significa que ficarei sem letras de unidade.
Responder1
O comando New-PSDrive pode criar mapeamentos de unidades temporários dentro do shell que podem ser nomeados como qualquer string. Como não preciso que essas unidades persistam, esta é uma boa solução para mim, e o parâmetro -Credential não está bugado (como acontece com start-bitstransfer).
New-PSDrive -name "drive1" -PSProvider "FileSystem" -Root "\\serverA\c$" -cred $cred
Start-BitsTransfer -Source "drive1:\\test.txt" -Destination .
Isso funciona bem e não há limite (irracional) para o número de mapeamentos de unidades temporárias que você pode criar. Para obter mais informações sobre o New-PSDrive, consultehttps://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-psdrive?view=powershell-6