Windows纯脚本代码无提示静默下载任意指定网络文件到本地指定文件夹
把下面的代码修改一下,替换欲下载的文件地址,将代码用记事本另存为【down.vbs】名称,文件类型选所有文件,一定看清楚是vbs文件,然后放入电脑运行即可无提示静默下载该网络文件了,这里需要注意一下该脚本程序可能会被防护程序误报并删除,导致下载失败,还有就是精简版系统缺少某些程序组件也不能正常使用的。常见:start /wait msvbcrtx86x64.exe /verysilent sp-/
把下面的代码修改一下,替换欲下载的文件地址,将代码用记事本另存为【down.vbs】名称,文件类型选所有文件,一定看清楚是vbs文件,然后放入电脑运行即可无提示静默下载该网络文件了,这里需要注意一下该脚本程序可能会被防护程序误报并删除,导致下载失败,还有就是精简版系统缺少某些程序组件也不能正常使用的。
down.vbs 脚本代码:
Set x= CreateObject("Microsoft.XMLHTTP")
x.Open "GET","http://down.kkxxiazai.com/game/cwllk4.1.zip",0
x.Send()
Set s = CreateObject("ADODB.Stream")
s.Mode = 3
s.Type = 1
s.Open()
s.Write(x.responseBody)
s.SaveToFile LCase("D:\连连看.zip"),2
下面是bat代码可以直接安装或运行:
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
::设置要下载的文件链接,仅支持http协议。必写项。
set Url=https://www.xxxx.com/winrar.exe
::设置文件保存目录,若下载至当前目录,请留空
set Save=D:\document
if exist %Save% (echo 位置:%Save%) else (mkdir %Save% & echo 已创建:%Save%)for %%a in ("%Url%") do set "FileName=%%~nxa"
if not defined Save set "Save=%cd%"
(echo Download Wscript.Arguments^(0^),Wscript.Arguments^(1^)
echo Sub Download^(url,target^)
echo Const adTypeBinary = 1
echo Const adSaveCreateOverWrite = 2
echo Dim http,ado
echo Set http = CreateObject^("Msxml2.ServerXMLHTTP"^)
echo http.open "GET",url,False
echo http.send
echo Set ado = createobject^("Adodb.Stream"^)
echo ado.Type = adTypeBinary
echo ado.Open
echo ado.Write http.responseBody
echo ado.SaveToFile target
echo ado.Close
echo End Sub)>DownloadFile.vbsDownloadFile.vbs "%Url%" "%Save%\%FileName%"
del DownloadFile.vbsif exist "%Save%\%FileName%" (echo 位置:"%Save%\%FileName%" & start /wait "" "%Save%\%FileName%" /S REBOOT=Suppress & pause >nul ) else (echo "%Save%\%FileName%"文件不存在)
下面的bat代码下载程序后也可直接安装或运行:
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
::设置要下载的文件链接,仅支持http协议。必写项。
set Url=https://www.xxxx.com/winrar.exe
::设置文件保存目录,若下载至当前目录,请留空
set Save=D:\
if exist %Save% (echo 位置:%Save%) else (mkdir %Save% & echo 已创建:%Save%)for %%a in ("%Url%") do set "FileName=%%~nxa"
if not defined Save set "Save=%cd%"
(if exist "%Save%\%FileName%" (goto beginInstall)
echo Download Wscript.Arguments^(0^),Wscript.Arguments^(1^)
echo Sub Download^(url,target^)
echo Const adTypeBinary = 1
echo Const adSaveCreateOverWrite = 2
echo Dim http,ado
echo Set http = CreateObject^("Msxml2.ServerXMLHTTP"^)
echo http.open "GET",url,False
echo http.send
echo Set ado = createobject^("Adodb.Stream"^)
echo ado.Type = adTypeBinary
echo ado.Open
echo ado.Write http.responseBody
echo ado.SaveToFile target
echo ado.Close
echo End Sub)>DownloadFile.vbsif exist "%Save%\%FileName%" (echo 位置:%Save%\%FileName% & goto beginInstall) else (echo 下载:%FileName% 请等待)
DownloadFile.vbs "%Url%" "%Save%\%FileName%"
::del DownloadFile.vbs:beginInstall
del DownloadFile.vbs
if exist "%Save%\%FileName%" (echo 安装:%Save%\%FileName% 请稍等,可能需要您手动确认安装 & start /wait "" "%Save%\%FileName%" -S & exit ) else (echo 异常:%Save%\%FileName% 文件不存在或被损坏!)
安装命令为/S 或 -S 还有其他的静默安装命令:
/sp- /verysilent
/sp- /verysilent /norestart
常见:start /wait msvbcrtx86x64.exe /verysilent sp-
/wait 加这个是等待安装完成再执行后面的命令的意思
/verysilent sp- 静默安装的意思
start /wait vcredist_x86.exe /q /norestart
start /wait vcredist_x64.exe /q /norestart
start /wait dotNetFx40_Full_x86_x64.exe /q /norestart
/install 直接安装,可能会有提示
/quiet 无提示安装
/S 这个比较常用
/Q 常用
start /wait x:\setup.exe /QB REBOOT=Suppress
start /wait x:\setup.exe /QN REBOOT=Suppress
/QB(/QN)用于自动安装软件
/REBOOT=suppress 安装后不重起
/silent 这个比较常用
/silent /noSilentReboot
安装命令还有很多,请自行搜索学习吧。
更多推荐
所有评论(0)