Quand je lance cette commande localement sur une machine distante cela fonctionne:Le téléchargement d'un fichier à partir d'une page Web sur les ordinateurs distants à l'aide d'un fichier batch
powershell -Command "(New-Object Net.WebClient).DownloadFile('<WebPath>', 'C:\Users\<user>\Desktop\file.exe')"
Lorsque je tente la même commande à distance en utilisant PsExec dans un fichier batch: Je reçois "cmd démarré sur remote_machine avec l'ID de processus numéro_id".
Cependant, rien ne s'est produit et le téléchargement n'a pas été exécuté. Les suggestions ici: Run PowerShell scripts on remote PC
n'a pas fonctionné pour moi.
Des suggestions?
Edit:
J'ai réussi à télécharger le fichier via la ligne de commande (cmd) en utilisant cette commande:
PsExec.exe \\<remote_machine> -u <username> -p <password> -d powershell -Command (New-Object Net.WebClient).DownloadFile('<url address','C:\file.exe')
Mais cela ne fonctionne pas lorsque je tente cela dans un fichier batch:
(Set DownloadInstaller = "powershell -Command (New-Object Net.WebClient).DownloadFile('<url address','C:\file.exe')")
PsExec.exe \\<remote_machine> -u %username% -p %password% -h -d cmd /c %DownloadInstaller%
Une raison pour laquelle vous utilisez psexec sur Invoke-Command? – Persistent13
Juste était familier avec ça ... Je vais essayer Invoke-Command. – user2653179
@ Persistent13 Certains environnements bloquent RPC et/ou WinRM, laissant PsExec comme seule autre option. – TheIncorrigible1