我尝试了几种解决方案无济于事,但我正在寻找一种解决方案来创建一个批处理文件,该文件将运行位于网站上的远程.txt
文件中的任何命令。
例如,有人点击.bat
,.bat
从www.example.com/command.txt
检索命令列表,然后运行.txt
的内容,就像命令一样在原始.bat
文件中明确指定。我并不反对使用PowerShell或VBScript。
答案 0 :(得分:1)
在PowerShell中,您可以执行此操作:iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
即。这将下载并运行PowerShell脚本:https://chocolatey.org/install.ps1
<强>解释强>
New-Object System.Net.WebClient
创建.Net Web客户端的新实例。DownloadString('https://chocolatey.org/install.ps1')
调用网络客户端的下载方法从此脚本中撤回文本(请参阅https://msdn.microsoft.com/en-us/library/fhd1f0sw(v=vs.110).aspx)。iex
是invoke-expression
的别名。这会运行下载的字符串,就像它是一个命令一样;即使PowerShell执行远程脚本。更简单的版本
虽然Chocolatey安装脚本是令人印象深刻的1衬里,但下面的扩展版本可能更容易理解(尽管最终与上面完全相同;只是分成几行)。
$scriptUri = 'https://chocolatey.org/install.ps1'
$webClient = New-Object -TypeName 'System.Net.WebClient'
$scriptAsString = $webClient.DownloadString($scriptUri)
Invoke-Expression -Command $scriptAsString