Board logo

标题: [游戏娱乐] 也做个批处理数字钟 [打印本页]

作者: neorobin    时间: 2010-6-17 02:38     标题: 也做个批处理数字钟

本帖最后由 neorobin 于 2012-5-23 23:26 编辑

测试环境: XP 32 位, WIN7 32 位

图 1. 以 ASCII-219 和 ASCII-4 显示的效果(代码在 codepage 437 下正常, codepage 936 不正常显示)
[attach]5309[/attach]

图 2. 以 # 和 * 显示的效果(适应各种代码页)
[attach]5311[/attach]

CODE 1. 以 ASCII-219 和 ASCII-4 显示, 为避免代码受损, 上传为附件
[attach]5312[/attach]

CODE 2. 以 # 和 * 显示(适应各种代码页)
  1. @echo off & setlocal enabledelayedexpansion & mode con cols=27 lines=6 & color 0a
  2. set "cc=# "
  3. for %%a in (4 1 2 1 2 1 4 2 1 2 1 2 1 2 1 2 4 2 5 2 6 2 4 2 5 1 2
  4. 1 4 2 1 2 5 2 3 2 8 2 4 1 7 2 1 2 1 2 1 2 5 1 5 1 8 1 4 2 4) do (
  5.   set "cc=!cc:~-1!!cc:~0,1!"
  6.   for /l %%i in (1,1,%%a) do set "dgts=!dgts!!cc:~-1!"
  7. )
  8. for /l %%z in (0 0 0) do (
  9.   if "!time:~7,1!" neq "!sec!" (
  10.     set "sec=!time:~7,1!" & set "oc="
  11.     for /l %%h in (0,1,4) do (
  12.       for %%d in (0 sp 1 sp : sp 3 sp 4 sp : sp 6 sp 7) do (
  13.         if "%%d"==":" (set /a "tt=%%h&1"&if "!tt!"=="0" (set oc=!oc! ) else set oc=!oc!*) else (
  14.           if "%%d"=="sp" (set oc=!oc! ) else (
  15.             set "timeP=!time: =0!"&set /a s=!timeP:~%%d,1!*15+%%h*3
  16.             for %%o in (!s!) do set "oc=!oc!!dgts:~%%o,3!"
  17. ))))&cls & set /p=!oc!<nul))
复制代码
CODE 3. 以 ■ 和 ● 显示, 仅在 codepage 936 下测试过正常.
  1. @echo off & setlocal enabledelayedexpansion & mode con cols=54 lines=6 & color 0a
  2. chcp 936 & rem Only tested under Chinese Simplified
  3. set "sp= " & set "cc=■!sp!"
  4. for %%a in (4 1 2 1 2 1 4 2 1 2 1 2 1 2 1 2 4 2 5 2 6 2 4 2 5 1 2
  5. 1 4 2 1 2 5 2 3 2 8 2 4 1 7 2 1 2 1 2 1 2 5 1 5 1 8 1 4 2 4) do (
  6.   set "cc=!cc:~-1!!cc:~0,1!"
  7.   for /l %%i in (1,1,%%a) do set "dgts=!dgts!!cc:~-1!"
  8. )
  9. for /l %%z in () do (
  10.   if "!time:~7,1!" neq "!sec!" (
  11.     set "sec=!time:~7,1!" & set "oc="
  12.     for /l %%h in (0,1,4) do (
  13.       for %%d in (0 sp 1 sp : sp 3 sp 4 sp : sp 6 sp 7) do (
  14.         if "%%d"==":" (set /a "tt=%%h&1"&if "!tt!"=="0" (set oc=!oc!!sp!) else set oc=!oc!●) else (
  15.           if "%%d"=="sp" (set oc=!oc!!sp!) else (
  16.             set "timeP=!time: =0!"&set /a s=!timeP:~%%d,1!*15+%%h*3
  17.             for %%o in (!s!) do set "oc=!oc!!dgts:~%%o,3!"
  18. ))))&cls & set /p=!oc!<nul))
复制代码

作者: Seter    时间: 2010-6-17 06:44

这个好象不错...嘿嘿看看
作者: jcy0307    时间: 2010-6-17 22:14

牛,我今天总算知道人才是啥意思了,用来形容楼主再合适不过!
作者: raymai97    时间: 2010-6-18 02:34

太厉害了!不过在WINDOWS7下有点BUG。
作者: 523066680    时间: 2010-6-18 09:03

我还能说在dos下无法实现呢……  
robin标上执行环境吧。    最郁闷那些说别的版本说不能运行的。
作者: sharpxie    时间: 2010-6-18 09:54

批处理也有这么强大
作者: kbsjfans    时间: 2010-6-26 14:31

呵呵,创意无限哈,这的确也体现了批处理的强大性,基础命令是魅力无穷!
作者: chenfei    时间: 2010-6-29 05:19     标题:

哇,楼主好强大,支持
作者: Skybat    时间: 2010-7-1 14:34

不错!在XP下很稳定~
作者: chinavirus    时间: 2010-7-2 10:20

呵呵 辛苦了  
支持原创!
作者: 骚鸡    时间: 2010-7-3 08:40

非常不错~!学习下~!。。。
作者: canyuexiaolang    时间: 2010-7-3 15:11

批处理的动画效果,只要敢想,有技术,那就。。

漂亮!
作者: raymai97    时间: 2010-7-8 01:37

http://bathome.net/thread-8480-1-1.html
搞定后windows vista也能执行得很稳定!
作者: sl543001    时间: 2010-7-9 17:43

看看俺的代码,彩色版的漂亮些
作者: vsbat    时间: 2010-7-9 18:56

win 7 下是可以正常运行的
作者: sl543001    时间: 2010-7-10 21:37

汗,俺的win7下可以当单色的用,正在研究更好的兼容win7的技术
作者: sl543001    时间: 2010-8-15 16:05

兼容win7的技术已经初步解决
作者: lizhou    时间: 2010-10-27 15:05     标题: 回复 1楼 的帖子

想问一下,那些黑点和圆点怎么弄的
作者: mysuperbat    时间: 2010-11-5 17:16

真是强大,神奇啊!!
作者: wijecn    时间: 2011-5-29 11:39

学习学习。
作者: woai221    时间: 2011-5-30 18:31

关键是我没看懂啊。
作者: applba    时间: 2011-6-8 03:12

效果不错,但是cpu占用相对过高
作者: y8160000    时间: 2011-6-9 20:25

我是想都不敢想,有这种批处理。看来我的水平还是入门
作者: raymai97    时间: 2011-7-30 12:45

额,没有想到今天我又看到这个帖子了…… 而且不看回复,还以为是新的…… 看来离开这里太久了……
作者: aoki888    时间: 2012-6-21 06:52

有才啊!!!
作者: 5566ljlj    时间: 2012-7-22 13:54

做得很漂亮
作者: fuxing888    时间: 2012-8-25 20:06

楼主太厉害了,能不能给我做个无敌批处理格式化硬盘的批处理了,自己写了几个都执行到一半就over了!郁闷啊,请楼主给我写个代码!让俺也见识一下
作者: eddf    时间: 2012-8-27 10:28

怎样用点阵列数字样本显示当前的系统时间,请教高手解答,用批处理实现。以下是点阵列数字样本的批处理文本。


——————————————————————————————————————————————————————————————————————————————————————————



@echo off
cls
echo.
rem  根据黄金分割比,此程序的每个数字的宽乘以高为10×16个点阵列。
color 0E
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.               ████
echo.               ████
echo.               ████
echo.               ████
echo.
echo.
echo.
echo.               ████
echo.               ████
echo.               ████
echo.               ████
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██████████
echo.               ██████████
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██████████
echo.               ██████████
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██    ██
echo.               ██    ██
echo.               ██    ██
echo.               ██    ██
echo.               ██    ██
echo.               ██    ██
echo.               ██    ██
echo.               ██████████
echo.               ██████████
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.                               ██
echo.               ██████████
echo.               ██████████
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.                       ██
echo.                     ███
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                       ██
echo.                     ████
echo.                     ████
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.               ██████████
echo.               ██████████
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██            ██
echo.               ██████████
echo.               ██████████
echo.
echo.
echo.
echo.
pause
作者: 狱渊    时间: 2013-4-28 20:45

回复 1# neorobin


    还不错哦
作者: zhangzsky    时间: 2018-4-11 23:24

不闪屏
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. mode con cols=54 lines=6
  4. color 0a
  5. chcp 936
  6. rem Only tested under Chinese Simplified
  7. set "sp= "
  8. set "cc=■!sp!"
  9. for %%a in (
  10. 4 1 2 1 2 1 4 2 1 2 1 2 1 2 1 2 4 2 5 2 6 2 4 2 5 1 2
  11. 1 4 2 1 2 5 2 3 2 8 2 4 1 7 2 1 2 1 2 1 2 5 1 5 1 8 1 4 2 4
  12. ) do (
  13. set "cc=!cc:~-1!!cc:~0,1!"
  14. for /l %%i in (
  15. 1,1,%%a
  16. ) do (
  17. set "dgts=!dgts!!cc:~-1!"
  18. )
  19. )
  20. for /l %%z in () do (
  21. if "!time:~7,1!" neq "!sec!" (
  22. set "sec=!time:~7,1!"
  23. set "oc="
  24. for /l %%h in (
  25. 0,1,4
  26. ) do (
  27. for %%d in (
  28. 0 sp 1 sp : sp 3 sp 4 sp : sp 6 sp 7
  29. ) do (
  30. if "%%d"==":" (
  31. set /a "tt=%%h&1"
  32. if "!tt!"=="0" (
  33. set oc=!oc!!sp!
  34. ) else (
  35. set oc=!oc!●
  36. )
  37. ) else (
  38. if "%%d"=="sp" (
  39. set oc=!oc!!sp!
  40. ) else (
  41. set "timeP=!time: =0!"
  42. set /a s=!timeP:~%%d,1!*15+%%h*3
  43. for %%o in (
  44. !s!
  45. ) do (
  46. set "oc=!oc!!dgts:~%%o,3!"
  47. )
  48. )
  49. )
  50. )
  51. )
  52. cls
  53. set /p=!oc!<nul
  54. )
  55. )
复制代码

作者: I2mcq    时间: 2018-5-12 17:15

回复 1# neorobin


    不过放大就不行了
作者: ai20110304    时间: 2018-5-28 10:31

回复 1# neorobin


    没看懂第一个循环里的数字意思4  1 2 1,求解释
作者: Speed乄Jay    时间: 2019-11-19 15:59

真牛逼,批处理如此强大
作者: Zhou.    时间: 2020-8-18 17:21

Win 10 正常 [img]C:\users\ZLJ\1.bmp[[/img]
作者: Zhou.    时间: 2020-8-18 17:23

start https://www.baidu.com/s?wd=正常




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2