如何将文件或标准输出发布到http服务器?

时间:2019-02-15 09:39:18

标签: windows vbscript

我想执行一些命令,然后将它们发送到我的Web服务器中进行分析。

类似:

wmic csproduct get | wget http://someserver/cgi-bin/hello.pl

除了wget不是由Microsoft即时提供的。

我该如何使用Windows 2000及以后版本提供的东西做同样的事情? vbscript可以做这项工作吗?

1 个答案:

答案 0 :(得分:1)

由于您执行了一些命令来获取信息,使用命令外壳程序环境可能会更原生吗? PowerShell怎么样?

(New-Object System.Net.WebClient).UploadString("http://someserver/cgi-bin/hello.pl", (Get-WMIObject Win32_BIOS) )

read about the UploadString() method here

如果您仍然希望使用vbscript解决方案,下面是一个示例代码,该示例代码接受来自stdin的文本并将其发布到您的服务器:

Dim inp, http_req
inp = inp & WScript.StdIn.ReadAll()
WScript.Echo "Input: " & inp

Set http_req = CreateObject("WinHTTP.WinHTTPRequest.5.1")
http_req.open "POST", "http://someserver/cgi-bin/hello.pl", false
http_req.setRequestHeader "Content-Type", "text/plain"
http_req.send inp

The minimum requirements seems to be Windows 2000 Professional with SP3,我用Windows XP亲自测试了该脚本。