[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. set n=10
  3. :loop
  4. echo %n%
  5. set /a n-=1
  6. ping /n 2 127.1>nul
  7. if %n% gtr -1 goto loop
  8. pause
复制代码
时光荏苒||新陈代谢&&涛声依旧||本性难移

TOP

  1. @echo off
  2. for /l %%a in (10,-1,0) do (
  3. echo %%a
  4. for /l %%b in (1,1,1000) do echo.>nul
  5. )
复制代码

TOP

  1. @echo off
  2. for /L %%i in (10,-1,0) do (
  3.     ping -n 2 127.0>nul & cls & echo %%i
  4. )   
  5. pause
复制代码

TOP

  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. set num=10
  4. for /l %%i in (1,1,10) do (set /a num=num-1 & ping -n 2 127.1 > nul & echo !num!)
  5. pause
复制代码
一秒输出一个数~~~

TOP

@ECHO OFF
set n=11
:str
cls
set /a n-=1
echo %n%
ping -n 2 127.0.0.1>nul
if %n% neq 0 goto str
pause

就一行倒计时
何必写的太复杂

TOP

回复 1# wxcute
调用系统时钟什么的,不会。
使用gvim编辑批处理真的是一种灾难,尤其是有中文的时候。
我试着用下面的两种方法做了一下。
  1. @echo off
  2. for /l %%i in (10 -1 1) do (echo %%i)
  3. pause
  4. set num=10
  5. :A
  6. if %num% equ 0 (goto B) else (
  7.     set /a num=num-1
  8. echo %num%
  9. )
  10. goto A
  11. :B
  12. pause>nul
复制代码

TOP

  1. @echo off
  2. :循环十秒倒计时习题
  3. for /l %%i in (10 -1 0) do (ping -n 2 127.0.1>nul&cls&echo %%i)
  4. pause>nul
复制代码
  1. @echo off
  2. :循环十秒倒计时习题
  3. set/a "a=11"
  4. :zone
  5. set/a "b=a-=1"
  6. echo %b%
  7. ping /n 2 127.1>nul&cls
  8. if %b% equ 0 (pause>nul) else goto zone
复制代码

TOP

1# wxcute
  1. @echo off
  2. For /l %%i in (10 -1 0) do (ping 127.1 /n 2  >nul
  3. echo %%i)
  4. pause
复制代码
1

评分人数

    • zxd11097: 学习了 FOR原来有这么一种用法.技术 + 1

TOP

[coce]
@echo off
::setlocal enabledelayedexpansion
for /l %%i in (10,-1,1) do echo %%i&ping 127.0 -n 2 >nul2>nul
pause>nul
[/code]
菜鸟一个,潜心学习
总有学会的一天

TOP

第一种:
  1. ECHO OFF
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. FOR /L %%I IN (10,-1,0) DO (
  4. PING 127.1 /N 1>NUL
  5. ECHO %%I
  6. )
  7. PAUSE>NUL/code]
  8. 第二种:
  9. [code]ECHO OFF
  10. COLOR A
  11. SET A=11
  12. :START
  13. SET /A A=%A%-1
  14. PING 127.1 /N>NUL
  15. ECHO %A%
  16. Shift /1
  17. IF %A% GEQ 2 GOTO START
  18. IF %A% LEQ 2 GOTO END
  19. :END
  20. PAUSE>NUL
复制代码
水平有限,见笑了
Start.....Restart....

TOP

本帖最后由 abcdshenji 于 2011-5-4 14:02 编辑
  1. @echo off
  2. for /l %%i in (10 -1 0) do (
  3. set /p=_<nul
  4. for /l %%m in (0 1 10) do set /p=^<nul
  5. ping -n 2 127.1>nul&set /p=%%i<nul
  6. )
  7. echo;
  8. pause>nul
复制代码

TOP

@echo off
for /l %%i (10 -1 0) do echo 开始倒计时:%%i ^ &ping -n a 127.1>nul&cls

TOP

bat+vbs实现
  1. @echo off&setlocal enabledelayedexpansion
  2. color 0a
  3. call :delay 1000
  4. for /l %%i in (10,-1,0) do (
  5. echo %%i
  6. start "" /wait/min %temp%\delay.vbs
  7. )
  8. if exist %temp%\delay.vbs del %temp%\delay.vbs
  9. goto exit
  10. :delay
  11. echo wscript.sleep(%1)>%temp%\delay.vbs
  12. goto :eof
  13. :exit
  14. pause&exit
复制代码
0010101010101二进制的世界,让我着迷。

TOP

@echo off

for %%i in (1 2 3 4 5 6 7 8 9 10) do echo %%i
pause
sctrue 发表于 2011-3-13 23:03

看了这个朋友的回答,就在想,这样写的话应该来不及看到倒计时。直接十行就刷刷 的显示出来了
就想修改一下,第一次修改成这样。
  1. @echo off
  2. for %%i in (1 2 3 4 5 6 7 8 9 10) do (echo %%i
  3. ping -n 2 127.1>nul)
  4. pause
复制代码

结果运行出错。以为不能分开两行吧?
第二次修改。
  1. @echo off
  2. for %%i in (1 2 3 4 5 6 7 8 9 10) do (echo %%i&&ping -n 2 127.1>nul
  3. pause[code]
  4. 依旧不能运行,再修改。
  5. [code]@echo off
  6. for %%i in (1 2 3 4 5 6 7 8 9 10) do echo %%i&&ping -n 2 127.1>nul
  7. pause
复制代码

这样就可以了。
然后想到1 2 3 4 5 6 7...10可用1-10顺便改成10-1,让原来的顺计时改成倒计时。
代码如下。

  1. @echo off
  2. for %%i in (10-1) do echo %%i&&ping -n 2 127.1>nul
  3. pause
复制代码


结果直接显示出来了。这样不能运行的话。我就先改成1-10吧
依旧直接显示出来了。。。。
然后我就不知道怎么弄了。。。按理说可以这样写吧?

归根结底还是自己的基础知识不熟练。一开始的几个错误是那个括号不知道干什么用的,总以为do后面多个命令的话就要括起来。而不需要使用连接符&&。
中间的可以运行了,就想把代码简化一下。到最后越改越糟。

TOP

10# h5599859


绝佳效果

TOP

返回列表