Existe uma ferramenta de linha de comando do Windows para copiar arquivos para computadores remotos?

15

Estou procurando uma maneira de copiar arquivos de / para hosts remotos do Windows e preciso fornecer credenciais de usuário do domínio como parte do processo, semelhante à maneira como psexecfaz.

Sei que posso usar net usepara mapear o diretório de destino para uma letra de unidade e usá-lo xcopy, e sei que psexecpode fazer upload de arquivos para serem executados na máquina remota e excluí-los, mas estou procurando uma maneira de distribuir arquivos para hosts remotos que não será tão difícil de usar quanto net usee xcopy.

radai
fonte
por que você não pode usar o psexec se ele faz o que você precisa?
Snark
ele exclui os arquivos depois, e tenta executá-los antes que :-) eu preciso para transferir arquivos apenas ao redor
radai

Respostas:

17

O XCopy suporta caminhos UNC.

C:\>xcopy \\computer1\source\*.* \\Computer2\target
C:\>xcopy \\computer1\source\FakeFileNAme.txt C:\

Eu imagino que, com o uso de RunAs, você poderá alimentá-lo com as credenciais que desejar.

HTH

Ƭᴇcʜιᴇ007
fonte
FWIW, praticamente tudo no Windows suporta caminhos UNC - não é específico para xcopy.
user1686
As runas me permitem usar um usuário que não pode fazer logon na máquina local para transferir arquivos para a máquina remota?
Radai
1
Não uso RunAs fora de um domínio há algum tempo, mas acho que a opção "RunAs / netonly" fará o que você está procurando.
Ƭᴇcʜιᴇ007
3

Você pode usar robocopy. basta abrir uma janela de comando e digite robocopy /?para ver as opções disponíveis.

Travelling Tech Guy
fonte
Não notei nada no robocopy para especificar credenciais. Isso suporta isso?
Eric
2

Desde essa pergunta e respostas, o Powershell agora suporta cópia remota.
Consulte a documentação para Copiar item.
Também pode ser necessário ativar o PSRemoting (dependendo da máquina de destino)

Exemplo 5: Copie um arquivo para um computador remoto

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\PattiFul"
Copy-Item "D:\Folder001\test.log" -Destination "C:\Folder001_Copy\" -ToSession $Session
Jason S
fonte
Copy-Item -Recurse FolderNameHere -Destination \\ OtherMachine \ C $ \ Temp
SamAndrew81
0

Não é exatamente um "pequeno utilitário", mas o pacote pywin32 do Python para Windows tem win32nete win32wnetmódulos que podem ser úteis com credenciais de script e outras coisas.

user1686
fonte