1
當我它工作在遠程計算機上本地運行此命令:使用批處理文件從遠程計算機上的網頁下載文件
powershell -Command "(New-Object Net.WebClient).DownloadFile('<WebPath>', 'C:\Users\<user>\Desktop\file.exe')"
當我嘗試在批處理文件遠程使用PSEXEC相同的命令:
(Set downloadFileCommand = powershell -Command "(New-Object Net.WebClient).DownloadFile('%WebPath%', 'C$\Users\<user>\Desktop\file.exe')")
PsExec.exe \\<remote_machine> -u %username% -p %password% -s -d cmd /c %downloadFileCommand%
我得到「cmd啓動remote_machine進程ID #id_number」。
但是,什麼也沒有發生,下載沒有執行。這裏的建議: Run PowerShell scripts on remote PC
沒有爲我工作。
有什麼建議嗎?
編輯:
我設法用這個命令下載通過命令行(CMD)的文件:
PsExec.exe \\<remote_machine> -u <username> -p <password> -d powershell -Command (New-Object Net.WebClient).DownloadFile('<url address','C:\file.exe')
但是當我嘗試這不工作批處理文件:
(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%
任何你爲什麼使用psexec而不是Invoke-Command的原因? – Persistent13
只是熟悉它...我會嘗試調用命令。 – user2653179
@ Persistent13有些環境會阻止RPC和/或WinRM,只能將PsExec作爲其他選項。 – TheIncorrigible1