Como despachar um comando do Windows para o Windows

12

Como faço para programar comandos remotos em outros computadores Windows a partir de um computador Windows?

Por exemplo, em redes * nix- * nix, posso fazer ssh wu@otherbox foo e, desde que as chaves estejam configuradas corretamente, foo é executado e o cliente ssh retorna o código de retorno.

    
por Paul Nathan 03.10.2011 / 20:33

4 respostas

22

psexec - link

O PsExec é uma substituição de telnet leve que permite executar processos em outros sistemas, completos com interatividade total para aplicativos de console, sem ter que instalar manualmente o software do cliente.

Outra opção é escrever um powershell ou vbscript (usando o WMI).

    
por 03.10.2011 / 20:38
6

A ferramenta de linha de comando WMI é uma boa escolha:

wmic.exe /node:somecomputer process call create "c:\bin\uphclean\uphclean.exe -install"
    
por 03.10.2011 / 20:56
5

Você deve examinar o utilitário PSExec .

    
por 03.10.2011 / 20:39
2

Existe outra maneira se você está procurando uma abordagem de script. Isso pode ser feito via powershell, além do psexec e do wmic. O powershell remoto funciona apenas para o Windows 7 e provavelmente para o Vista, e definitivamente para o Server 2008.

invoke-command -computername YourTarget01 -scriptblock {
    $Object=get-something $Wibble
    $Data1=$Object.method
    }

Para usar isso, é necessário que o WinRM seja ligado e configurado na máquina de destino. Essas coisas podem ser enviadas via GPO para que você não precise configurá-las manualmente em todos os lugares. Útil para implantações em massa. Para ações complexas, é uma boa ideia criar um único objeto de sessão para que você não crie um novo a cada vez que acessar a máquina:

$Session=new-pssession -ComputerName YourTarget01
invoke-command -Session $Session -Scriptblock { }

Por padrão, as credenciais são do invocador, embora outras credenciais possam ser especificadas como opções.

    
por 03.10.2011 / 23:31