Comment envoyer une commande de Windows vers Windows

12

Comment puis-je créer des scripts de commandes à distance sur d'autres ordinateurs Windows à partir d'un ordinateur Windows?

Par exemple, sur les réseaux * nix- * nix, je peux le faire ssh wu@otherbox foo, et à condition que les clés soient correctement configurées, foos'exécute et le client ssh renvoie le code retour.

Paul Nathan
la source
Je ne suis pas encore en mesure de commenter, sinon je laisserais cela ici: 3rding Psexec, avec le commentaire ajouté que le CLUF peut être accepté via l'argument de ligne de commande / accepteula
NPS

Réponses:

22

psexec - http://technet.microsoft.com/en-us/sysinternals/bb897553

PsExec est un remplacement telnet léger qui vous permet d'exécuter des processus sur d'autres systèmes, avec une interactivité complète pour les applications de console, sans avoir à installer manuellement le logiciel client.

Une autre option consiste à écrire un PowerShell ou vbscript (en utilisant WMI).

jftuga
la source
6

L'outil de ligne de commande WMI est un bon choix:

wmic.exe /node:somecomputer process call create "c:\bin\uphclean\uphclean.exe -install"
RobW
la source
2

Il existe un autre moyen si vous recherchez une approche de script. Cela peut être fait via PowerShell en plus de psexec et wmic. PowerShell à distance ne fonctionne que pour Windows 7 et probablement Vista, et certainement pour Server 2008.

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

Pour l'utiliser, WinRM doit être activé et configuré sur la machine cible. Ce truc peut être poussé via GPO afin que vous n'ayez pas à le configurer à la main partout. Pratique pour les déploiements de masse. Pour les actions complexes, c'est une bonne idée de créer un seul objet de session afin de ne pas en faire tourner un nouveau à chaque fois que vous frappez la machine:

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

Par défaut, les informations d'identification sont celles de l'invocateur, bien que d'autres informations d'identification puissent être spécifiées comme options.

sysadmin1138
la source