如何使用MS-DOS命令模拟curl?

时间:2012-11-04 05:40:20

标签: windows curl command-line

我正在编写一个跨平台的应用程序,教会人们如何使用命令行。我想向他们展示如何打印URL的HTML内容。通常情况下,我会使用curl,但Windows不附带此程序,我不希望我的用户必须安装任何额外的程序。

有没有办法使用内置的MS-DOS命令模拟curl,可能会发送一个VBScript片段到wscript进行评估?

2 个答案:

答案 0 :(得分:5)

安装.net已安装,您可以使用批处理文件combine c#创建一个wget.cmd:

/*
@echo off && cls

if '%2'=='' (
  echo usage: %0 url filename
  goto :eof
)

set WinDirNet=%WinDir%\Microsoft.NET\Framework
IF EXIST "%WinDirNet%\v2.0.50727\csc.exe" set csc="%WinDirNet%\v2.0.50727\csc.exe"
IF EXIST "%WinDirNet%\v3.5\csc.exe" set csc="%WinDirNet%\v3.5\csc.exe"
IF EXIST "%WinDirNet%\v4.0.30319\csc.exe" set csc="%WinDirNet%\v4.0.30319\csc.exe"
%csc% /nologo /out:"%~0.exe" %0
"%~0.exe" "%1" "%2"
del "%~0.exe"
goto :eof
*/

using System;
using System.Net;
using System.IO;

class MyWget
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        wc.DownloadFile(args[0],args[1]);
    }
}

答案 1 :(得分:0)

用户在Windows上至少有两种可能性:

1)下载curl-for-windows build(在http://curl.haxx.se/download.html上搜索),其中一些是单个curl.exe文件(或者可能有一些ssl dll),所以不需要安装,你可以只复制到system32或添加到PATH

2)安装powershell并使用相应的.net对象来做这件事: http://answers.oreilly.com/topic/2006-how-to-download-a-file-from-the-internet-with-windows-powershell/