日期:2014-05-16  浏览次数:20878 次

Windows PowellShell脚本:定时下载文件

       很多人都觉得linux wget下载文件很方便,其实windows下也有类似的功能,而且可以更强大。

      默认情况下,.PS1 文件在资源管理器中的图标是文本文件的图标,默认打开程序是记事本,这点就很不像 .BAT、.CMD、.VBS 等文件了,这主要是考虑到安全因素。实际上 WinPS 是默认不运行脚本的。

  运行命令 Get-ExecutionPolicy 后可以查看当前的脚本运行策略,默认是 Restricted,也就是禁止所有脚本运行,可以用 Set-ExecutionPolicy 来修改策略,参数有 Unrestricted, RemoteSigned, AllSigned, Restricted, Default。其中 Default 和 Restricted 等价;Unrestricted 是最不安全的策略,允许所有脚本运行;RemoteSigned 说明非本地的脚本必须签名才可以运行,本地脚本可以运行;AllSigned 说明所有脚本都必须签名才可以运行。

  为了能运行 .PS1 文件,就修改一下脚本运行策略吧:

在powershell控制台执行Set-ExecutionPolicy Unrestricted

新建一个PS1文件例如DownloadM3U8 .ps1,右键打开方式选择windows->system32->windows power shell ->1.0->powershell.exe 始终用这个打开勾上

新建一个目录c:\TopVideo用于保存下载后的文件

脚本内容:

//新建一个数组

$wc=New-Object System.Net.WebClient[] 5        

//循环初始化
for($counter = 0; $counter -le 4; $counter++)
{   
     $wc[$counter]=New-Object System.Net.WebClient
}

//新建参数index并初始化为1
$index = 1

//循环10次下载
for($counter = 1; $counter -le 10; $counter++)
{