• windows powershell下载文件的4种方式


    在windows下使用powershell自带命令下载文件时有以下4种方式:

    1. Invoke-WebRequest
    2. Invoke-RestMethod
    3. Start-BitsTransfer
    4. System.Net.WebClient

    前提,需要powershell 5.1(win10默认就是)

    实验,在同一台机器(5G 400Mbps)上下载同一个文件(123MB),查看异同

    一、Invoke-WebRequest

         可以下载http,https,ftp资源 

        使用:  Invoke-WebRequest -Uri <source> -OutFile <destination>

           

         可以看出,在下载过程中,程序是先读取至内存中的,全部读取完后再写入文件,在读取过程中,文件大小为0

          

       我们再看看下载时长:

         1分15秒

      

     二、Invoke-RestMethod

        和RestWebRequest类似,区别在于RestMethod支持json和XML内容的代码,会尝试适当的解码器来读取,不支持HTML

       使用: Invoke-RestMethod -Uri <source> -OutFile <destination>

          再看看时长:

          1分31秒

    三、Start-BitTransfer

        这是windows自带的一个程序, 支持断点续传、下不同文件等,有需要的可以查看后面的参考链接

       使用: Start-BitsTransfer -Source $source -Destination $destination

       下载过程

        

     与上面不同的是,下载前会先占用磁盘大小,生成tmp文件

        

     时间:

         1分35秒

    四、System.Net.WebClient

      使用:(new-object System.Net.WebClient).DownloadFile('src_url', 'dst_file'))

       时长

       

    综上:4种方式下载文件在时间 长差距不大,所以根据所需选用

    参考文档:

    https://adamtheautomator.com/powershell-download-file/

    Email:362299908@qq.com
  • 相关阅读:
    大三寒假学习进度笔记(十三)
    大三寒假学习进度笔记(十二)
    大三寒假学习进度笔记(十一)
    大三寒假学习进度笔记(十)
    大三寒假学习进度笔记(九)
    汇编第五章作业
    小饼日记2020/12/6
    小饼日记2020/12/2
    *reverse*练习10--很简单的重邮杯预赛
    记录一个牛逼的计算机组成原理老师
  • 原文地址:https://www.cnblogs.com/landhu/p/15137792.html
Copyright © 2020-2023  润新知