精华内容
下载资源
问答
  • Powershell下载文件的三种方法Invork-WebRequestWebClient对象BitsTransfer模块 layout: post title: Powershell下载文件的三种方法 date: 2021-09-29 tags: [“BitsTransfer”,“download”,“powershell”,...

    Powershell下载文件的三种方法


    layout: post
    title: Powershell下载文件的三种方法
    date: 2021-09-29
    tags: [“BitsTransfer”,“download”,“powershell”,“powershell”,“计算机技术”]


    使用powershell不借助第三方软件下载文件(据我所知)有三种方法:Invork-WebRequest, System.Net.WebClient, Start-BitsTransfer.

    Invork-WebRequest

    Invork-WebRequest -Uri "<File URL>" -OutFile "<File Name>"
    #吐槽一下这个Uri参数,不应该是Url吗?
    #该参数有几个别名,wget、iwr、curl,但在pwsh7.0后wget和curl被取消了,可能开发者也觉得这样凑热度不太好。
    iwr -Uri "<File URL>" -OutFile "<File Name>"
    

    这个命令本来是用于发起web请求的,用OutFile参数将响应保存下来就能实现文件的下载。

    不过这个命令下载文件时先将数据存在内存里,全部下载完成后才会写入磁盘,因此下载大文件时容易炸内存。

    值得一提的是该命令返回的对象是经过解析的Microsoft.PowerShell.Commands.WebResponseObject对象,可以直接读出页面中的内容,所以可以用来写一个简单的爬虫。

    PS> $bingImageSearch = Invoke-WebRequest -Uri "https://cn.bing.com/images/search?q=cats&first=1&tsc=ImageBasicHover"
    PS> $bingImageSearch.Images | select class,alt,src                                                          
    
    class              alt             src
    -----              ---             ---
    id_avatar sw_spd   个人资料图片    data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgY...
    rms_img                            /rp/kFAqShRrnkQMbH6NYLBYoJ3lq9s.png
    fltIco rms_img     筛选器          data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNHB4IiBmb2N1c2FibGU9I...
    fltFillIco rms_img 筛选器          data:image/svg+xml;base64,PHN2ZyBmb2N1c2FibGU9ImZhbHNlIiB4bWxucz0iaHR0cDovL3d3dy53M...
    mimg rms_img       cats 的图像结果 https://tse1-mm.cn.bing.net/th/id/OIP-C.C0bliNuG3LA1bDPoRTeAnwHaFj?w=191&h=143&c=7&...
    mimg rms_img       cats 的图像结果 https://tse3-mm.cn.bing.net/th/id/OIP-C.23-NBtgiB3zQCjz3qlD9YgHaLG?w=191&h=286&c=7&...
    mimg rms_img       cats 的图像结果 https://tse3-mm.cn.bing.net/th/id/OIP-C.Ftos_Tg660JqK0WpjPH-HQHaJ4?w=191&h=255&c=7&...
    ##此处省略多行
    
    PS>  $bingImageSearch.Links | select id,class,href 
    
    id                      class             href
    --                      -----             ----
                            b_logoArea        /?FORM=Z9FD1
    sw_clx                                    javascript:void(0);
                                              javascript:void(0);
    ##此处省略多行
    
    PS> $bingImageSearch.InputFields | Format-Table 
    
    outerHTML
    ---------
    <input class="b_searchbox" id="sb_form_q" name="q" aria-autocomplete="both" aria-label="在此处输入你的搜索 - 输入时会...
    <input type="submit" class="b_searchboxSubmit" id="sb_form_go" tabIndex="0" name="go" value="搜索" />
    <input id="sa_qs" name="qs" value="ds" type="hidden" />
    ##此处省略多行
    

    WebClient对象

    #实例化WebClient对象
    PS> $client = [System.Net.WebClient]::new()
    #调用DownLoadFile方法。
    PS> $client.DownloadFile("<File URL>","<File Name>")
    
    #该方法的重载:
    PS> $client.DownloadFile
    
    OverloadDefinitions
    -------------------
    void DownloadFile(string address, string fileName)
    void DownloadFile(uri address, string fileName)
    

    这种方法据说是速度最快的,虽然我没有实际实验过,但想想也是,毕竟直接调用库里的类就不需要解析响应也不需要在异步任务中排队,肯定速度快。很适合多线程的下载任务。

    不过这个方法也有缺点,下载过程没有进度条,不知道已经下载了多少。

    BitsTransfer模块

    这是我个人最为推荐的方法。

    Start-BitsTransfer -Source "<File URL>" -Destination "<File Name>"
    

    这个模块也是Windows Update用来下载更新的模块,能够实现异步下载(排队的那种,不是多线程),并且管理方便。

    可以上BitsTransfer Module ’ Microsoft Docs阅读完整的文档,这里只举几个例子。

    #下载多个文件
    PS> $list = @"  
    >> source,destination
    >> s1,d1
    >> s2,d2
    >> s3,d3
    >> "@ 
    PS> $list = $list | ConvertFrom-Csv
    PS> $list | Start-BitsTransfer
    
    #异步下载
    PS> Start-BitsTransfer -Source "<File URL>" -Destination "<File Name>" -Asynchronous
    PS> Get-BitsTransfer
    

    也可以用来上传文件。

    Start-BitsTransfer -Source "<Source>" -Destination "<Destination>" -TransferType Upload
    

    或者设置优先级,使其不会与正在进行的任务抢带宽。

    Start-BitsTransfer -Source "<Source>" -Destination "<Destination>" -Priority Low
    

    本文同步发表于我的个人博客NucomBlog
    转载请注明出处,谢谢。

    展开全文
  • 点击下载来源:Windows PowerShell64/32位 V6.1.0 Windows PowerShell是由微软公司研发推出的任务自动化和配置管理框架,提供集成的脚本编写环境,具有强大的功能,比如:远程处理、功能模块、高级的功能、后台作业...

    点击下载来源:Windows PowerShell64/32位 V6.1.0

    Windows PowerShell是由微软公司研发推出的任务自动化和配置管理框架,提供集成的脚本编写环境,具有强大的功能,比如:远程处理、功能模块、高级的功能、后台作业、事件处理、脚本国际化、脚本调试、新的命令等,帮助IT 专业人员、程序员和高级用户更好、高效率的完成工作。PowerShell中包含了大量的新特性和新功能,提升了整体的用户体验,虽然PowerShell中一些功能只能供硬核PowerShell开发人员使用,但是PowerShell其他新功能和特性具有广泛的适用性。小编给大家带来的是Windows PowerShell64/32位下载,兼容性广泛,有需求或者对这款软件感兴趣的用户欢迎前来本站下载使用。
    Windows PowerShell

    使用说明

    windows powershell怎么打开,这里有具体的使用说明
    执行PowerShell
    在Windows 操作系统里,点击开始->运行->输入PowerShell,进入windows PowerShell。

    产品特性

    您可轻易发现 Windows Powershell 的功能。例如,若要查找用于查看和更改Windows 服务的cmdlet 列表,执行:开始->运行->cmd,在命令行下输入 PowerShell 进入 windows PowerShell,再输入如下命令:
    get-command *-service
    在发现可完成任务的 cmdlet 之后,可以使用 Get-Help cmdlet 了解有关该 cmdlet 的详细信息。例如,若要显示有关 Get-Service cmdlet 的帮助,请键入:
    get-help get-service
    若要充分理解该 cmdlet 的输出,则可通过管道将其输出传递给 Get-Member cmdlet。例如,以下命令将通过 Get-Service cmdlet 显示有关该对象输出的成员的信息。
    get-service | get-member

    使用方法

    关于windows powershell怎么用,以下提供了详细的使用方法,我们一起来学习一下
    一、关于执行权限的使用方法
    为防止恶意脚本的执行,PowerShell有一个执行策略,默认情况下,这个执行策略被设为受限的(Restricted),意味着PowerShell脚本无法执行,你可以使用下面的cmdlet命令确定当前的执行策略:Get-ExecutionPolicy 你可以选择使用的执行策略有:
    Restricted -脚本不能运行;
    RemoteSigned - 本地创建的脚本可以运行,但从网上下载的脚本不能运行(除非它们拥有由受信任的发布者签署的数字签名);
    AllSigned – 仅当脚本由受信任的发布者签名才能运行;
    Unrestricted –脚本执行不受限制,不管来自哪里,也不管它们是否有签名。
    你可以使用下面的cmdlet命令设置PowerShell的执行策略:Set-ExecutionPolicy
    二、创建事件日志的方法
    管理员可以使用PowerShell创建一个新的事件日志,还可以查看事件日志的状态,也可以使用PowerShell轻松地添加一个新的事件日志,例如,可以使用下面的代码创建一个名为TestSource的新的应用程序事件日志。
    New-EventLog -LogName Application -Source TestSource
    如果将信息写入该Windows事件日志中只需要调用EventLog的WriteEntry方法。具体代码如下:
    Write-EventLog -LogName Application -EventId 1234 -Source TestSource -Message "Test write"
    另外,你还可以通过使用Windows PowerShell快速查看关键Windows事件日志的配置状态和事件的数量。
    Get-EventLog cmdlet里提供了-List参数,可显示出每个事件日志文件最大值和OverflowAction,以及目前的日志的数量。

    功能介绍

    1、脚本编辑器
    功能强大的编辑器,具有语法着色,参考高亮显示,书签,代码格式和代码完成。创建,编辑和管理代码片段。带有来自远程模块的cmdlet的脚本。
    2、函数生成器
    轻松创建高级功能,包括cmdlet和参数属性以及基于注释的帮助。函数生成器为您插入正确的语法。
    3、GUI设计器
    增强的表单设计器使GUI设计变得快速和简单。无需手动编写数百行代码。使用预先连线的控件来创建高级GUI。
    4、脚本调试器
    本地和远程运行和调试脚本和整个模块。快速调试,修复和验证您可能遇到的任何问题。支持条件断点。
    5、多平台支持
    在单个应用程序中支持32位和64位版本的PowerShell。使用提升的权限和STA / MTA模式运行脚本。
    6、创建可执行文件和安装程序
    将您的脚本转换为可执行文件。创建MSI安装程序。微调自定义访问权限,高程和平台。在安装WindowsPowerShell的情况下运行32位和64位可执行文件。
    7、创建模块
    通过从现有功能中进行选择,在几分钟内创建一个WindowsPowerShell脚本模块。
    8、性能监视器
    通过显示实时内存和CPU使用情况来直观地跟踪脚本的性能。并排显示最近三届会议的表现结果。
    9、编辑器控制台
    集成的WindowsPowerShell控制台在维护会话的同时在32位和64位之间切换。
    10、项目
    使用项目来管理多文件脚本,创建多表单GUI和脚本模块。
    11、源代码管理
    集成的源代码控制连接备份和版本化您的文件,使您不会失去工作。
    12、浏览器
    为该编辑器命令,函数,WMI对象,.NET对象和数据库提供浏览器。
    13、新的 cmdlet
    Windows PowerShell 6.1引入了 100 多个内置的 cmdlet。这些 cmdlet,排除其他任务,使您可以执行的与计算机相关、 事件日志和性能计数器管理任务。
    14、脚本国际化
    此新功能使 Windows PowerShell 脚本可在由用户计算机上的 UI 区域性设置指定的口头语言中显示消息。
    15、高级的功能
    高级的功能都具有和cmdlet 的功能相同的功能和行为。但是,它们完全用 WindowsPowerShell 语言编写,而不是已编译的 C#。
    16、模块
    模块允许脚本开发人员和管理员进行分区和组织他们独立、 可重用单元中的 WindowsPowerShell 代码。模块中的代码在它自己独立的上下文中执行,并不影响模块以外的状态。

    特色简介

    1、功能齐全的WindowsPowerShell编辑器
    2、以可视方式创建PowerShellGUI工具
    3、将脚本转换为可执行(.exe)文件
    4、创建MSI安装程序
    5、从现有功能或帮助文件创建模块
    6、使用函数生成器创建高级函数
    7、监视脚本性能和内存使用情况
    8、使用来自远程计算机的cmdlet的脚本
    9、源控制集成
    10、集成的PowerShell控制台(32位和64位)
    11、全面的脚本调试器
    12、远程调试
    13、多文件和模块调试
    14、代码格式

    常见问题

    1、调试一个脚本时,如何逐行运行脚本?
    这时你可以使用Step-Into cmdlet命令,它会使脚本一行一行地执行,不管有没有设置断点,如果你想从这种步进式运行模式退出来,使用Step-Out cmdlet命令即可,但需要注意的是,使用Step-Out cmdlet命令后,断点仍然有效。
    2、怎么把列表内容转换成一个数组?
    通过使用@符号,例如,下面的代码创建了一个名为$Procs的变量,它包含多行文本内容(一个数组):$procs = @{name="explorer","svchost"}

    展开全文
  • powershell下载文件

    2020-10-24 12:48:06
    $client = new-object System.Net.WebClient $client.DownloadFile('https://xxxxxxxx.xxx','D:\xxxxx/xxxx.xxx')
    $client = new-object System.Net.WebClient
    $client.DownloadFile('https://xxxxxxxx.xxx','D:\xxxxx/xxxx.xxx')
    
    展开全文
  • PowerShell 下载地址

    千次阅读 2019-06-12 10:51:25
    WindowsXP-KB926140-x86-CHS(PowerShell1.0)(1.65M)下载地址 1.0http://www.microsoft.com/zh-cn/download/details.aspx?id=9591 2.0http://www.microsoft.com/zh-cn/download/details.aspx?id=16818
    展开全文
  • 我们经常会有下载文件的需求,使用powershell下载文件时若使用Invoke-WebRequest下载文件它会不断解析文件流所以会导致卡慢,解决办法是在前面声明下载时保持“安静”,但是这不好记,也不符合人类的直接思维,还有...
  • 使用Windows的Powershell下载文件

    千次阅读 2019-07-26 18:50:02
    使用Windows的Powershell下载文件 例如要将文件:http://www.51.cto.com/download/datainfo.cfg http://www.51.cto.com/download/ABK/full.ABK http://www.51.cto.com/download/FIN/full.FIN ...
  • Powershell下载googleChrome

    2019-07-19 12:39:32
    https://medium.com/@uqualio/how-to-install-chrome-on-windows-with-powershell-290e7346271   尝试重新格式化: $Path = $env:TEMP; $Installer = "chrome_installer.exe"; Invoke-WebRequest ...
  • Invoke-WebRequest http://dl.google.com/chrome/install/375.126/chrome_installer.exe -OutFile C:\ChromeSetup.exe 再cmd下运行ChromeSetup.exe进行安装
  • PowerShell下载网页

    2008-07-13 10:29:09
    PowerShell下载网页
  • PowerShell-7.0.0-win-x64.zip

    2020-03-30 11:23:45
    这意味着Windows PowerShellPowerShell Core用户将能够在Windows、Linux和macOS上跨越使用相同版本的PowerShell,而PowerShell 7用户将与他们所依赖的Windows PowerShell模块具有非常高的兼容性。
  • SQL Server with Powershell

    2018-12-24 11:56:30
    SQL Server with Powershell
  • 今天想聊聊POWERSHELL对于WEB页面的一些应用,本人也是最近才发觉其实PS也是可以做爬虫的。。。所以想抛砖引玉给大家一个思路。   这次要用到的主要命令是 invoke-webrequest    先来看看官方对于这个命令的...
  • powershell由浅入深三部曲【初级、中级、高级】全套视频 网盘资源
  • Powershell

    2012-08-20 09:52:57
    Powershell的经典教程,适合新手和刚入门的管理员
  • psmsi, Windows 安装程序PowerShell模块 Windows 安装程序PowerShell模块 向PowerShell公开 Windows 安装程序功能,提供查询已经安装产品和修补程序信息以及查询包的视图的手段。描述PowerShell是管道对象的强大命令...
  • DL-Exec是一个简单的脚本,它利用用户提供的参数来下载和执行带有远程主机上的参数的PowerShell脚本。 该脚本甚至可以通过memoryExec参数运行而无需接触磁盘,或者如果需要运行时参数,则可以直接在主机上下载并...
  • 使用PowerShell下载文件

    千次阅读 2016-03-07 13:20:14
    $client = New-Object “System.Net.WebClient” $client.DownloadFile(“\\10.1.18.21\8859.txt”,”D:\info.txt”)
  • Win10 PowerShell命令行下载文件 $client = new-object System.Net.WebClient $client.DownloadFile(...
  • 使用Powershell下载播客

    2020-10-06 03:54:36
    A number of people have mentioned to me that they didn't realize that Powershell is included by default in Windows 7. If you haven't yet jumped on the Powershell bandwagon, this is a good time. Powers...
  • Windows Server 2003的32位PowerShell2.0下载

    热门讨论 2012-09-17 00:00:12
    Windows Server 2003的32位PowerShell2.0下载
  • PowerShell 脚本将在名为“computers.txt”的行分隔文件中根据域中的计算机列表(带有域名前缀)搜索您的 Windows Active Directory 域。 此脚本将输出“localadmins.csv”,给出能够查询的机器上所有本地管理员...
  • 打开powershell的初衷是用.ps1脚本下载论文相关资料,但是完全没听说过这个东西,眼前一黑。 打开powershell 以我浅薄的知识储备,我将其理解为一个类似于cmd或者shell的一个命令行工具, 启动方式1 普通启动 按win+...
  • 如果是在cmd下执行powershellpowershell -Command “Invoke-WebRequest $httpPath -OutFile dstName.tar.gz” 如果是在powershell下执行: Invoke-WebRequest $httpPath -OutFile dstName.tar.gz 解压缩到当前...
  • Windows PowerShell使用

    2015-04-18 13:42:41
    Windows PowerShell使用
  • vbs下载者和powershell下载

    千次阅读 2015-12-25 14:39:30
    vbs Set Post = CreateObject("Msxml2.XMLHTTP") Set Shell = CreateObject("Wscript.Shell") ...Post.Send() ...powershell set-executionpolicy unrestricted PowerShell -file test.ps1
  • Powershell 目前在 GitHub 维护, 所以下载地址为 https://github.com/PowerShell/PowerShell/releases 转载于:https://www.cnblogs.com/imzhizi/p/10721386.html
  • vm-powershell这是一个方便的 VMware Powershell 脚本存储库,(我认为)值得与全世界分享。 我刚刚开始接触 Powershell,并且一直想使用 Git,所以我们开始吧! 埃里克·基尔

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,664
精华内容 11,865
关键字:

powershell下载