在cmd中并行运行进程时显示用户进度

时间:2015-02-09 10:05:49

标签: batch-file cmd progress-bar

我的目标是在没有任何ASK收费栏的情况下向客户端静默安装JRE,或者在安装后重定向到oracle ...所以,我制作批处理文件如:

@echo off 
setlocal
echo Installing JRE started. It will take about 40 seconds. Please wait...
START /WAIT jre-8u31-windows-i586.exe /s /L C:\\jre8_31.log
START /WAIT http://example.co.il/
EXIT 

它正在按要求工作,但这个过程需要一分钟,我想为用户添加一些动画,比如进度条。 我是java程序员,没有蝙蝠/脚本编程的深入知识,所以我希望得到我的问题的建议。此外,解决方案必须无需用户下载任何添加的资源。

2 个答案:

答案 0 :(得分:2)

编辑: 我找到了解决方案,感谢EL MANO:

@echo off
title Loading... By El Mano
color 0a
set load=
set/a loadnum=0
:Loading
set load=%load%()
cls
echo.
echo Loading... Please Wait...
echo ----------------------------------------
echo %load% 
echo ----------------------------------------
ping localhost -n 2 >nul
set/a loadnum=%loadnum% +1
if %loadnum%==20 goto Done
rem You can set the number of ()'s as whatever you rem want but remember: in your "loading box" you rem need 2 spaces for every () because "()" takes up rem 2 spaces. The above box has 40 spaces, so rem twenty repeats, adding 1 () every repeat.
goto Loading
:Done
echo.
pause
rem *your action here*
exit

答案 1 :(得分:1)

/ S指定“静音”安装。尝试从CMD提示符执行以下命令。这可能会显示出更多选择。如果你很幸运,这个命令可能表明你有/ S以外的选择,如/ Q,/ QB,/ QN,/ QB等。

jre-8u31-windows-i586.exe /?