中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何用“\-/”表示一个进度状态?
« [1] [2] [3] [4] »
作者:
标题: 如何用“\-/”表示一个进度状态? 取消高亮 | 上一主题 | 下一主题
kawakumo
初级用户





积分 32
发帖 9
注册 2006-10-30
状态 离线
『楼 主』:  如何用“\-/”表示一个进度状态?

批处理中想用“\-/”表示一个进度状态,好像“-”在翻滚那样,要怎样实现?

2006-10-30 15:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 2 楼』:  

你的意思是一般执行DOS命令一边显示进度吗?



我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2006-10-30 20:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 3 楼』:  

@echo off
set str=\-/-
setlocal enabledelayedexpansion
:test
for /l %%i in (-1 1 3) do (
     set /p=!str:~%%i,1!<nul
     ping /n 2 127.1>nul)
cls
goto :test
pause>nul

看看这段代码能否完成任务?如果ping /n 2 127.1实现的延时过长(2秒左右)请采用其它办法。

   此帖被 +4 点积分      点击查看详情   
评分人:【 redtek 分数: +2  时间:2006-10-30 22:06
评分人:【 haiou327 分数: +1  时间:2007-5-12 16:58
评分人:【 sunxh 分数: +1  时间:2009-9-12 12:50


2006-10-30 21:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 4 楼』:  

很象早期的压缩软件的处理过程,精彩~:)
给youxi01加分~:)

   此帖被 +1 点积分    点击查看详情   
评分人:【 qiuqiansuo 分数: +1  时间:2007-2-1 00:58




    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 22:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 5 楼』:  

我也来个:
@echo off
setlocal enabledelayedexpansion
set b=\-/-
:b
for /l %%i in (0,1,32) do call :a %%i
cls
goto :b
:a
set/a a=%1%%4
set/p=!b:~%a%,1!<nul
ping/n 2 127.1>nul
goto :eof
第二个:
@echo off
setlocal enabledelayedexpansion
set b=\-/-
:b
for /l %%i in (0,1,3) do (
echo !b:~%%i,1!
ping /n 2 127.1>nul
cls)
goto b
[ Last edited by qwe1234567 on 2006-10-30 at 10:34 PM ]

   此帖被 +5 点积分       点击查看详情   
评分人:【 redtek 分数: +4  时间:2006-10-31 02:38
评分人:【 sunxh 分数: +1  时间:2009-9-12 12:51




我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2006-10-30 22:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by 9527 at 2006-10-30 22:23:
我觉得楼主并不是这个意思,/\-这三个符号你们没有看出来组合出来是个星号吗?估计他要的效果是有转动的效果,如果是转动的效果P处理是无法实玠...

原来楼主想要好玩的动画啊~:)
转动的效果照样可以实现,俺认为没有做不到的事情:)
不仅仅是转动,就是做字处理插字、改都能~:)(要用到ASCII码特殊控置字符:)

在版主qwe1234567兄的代码的基础上加了一个退格功能:)



========== 注意: 请不要直接 COPY  CON  文件名.bat 的方式COPY,
========== 因下面代码特殊控置字符,直接copy是拷贝不上的。
========== 简单办法:COPY到Windows的记事本,然后另存为批处理文件,再执行。
@echo off
rem qwe1234567 字符动画

setlocal enabledelayedexpansion
set b=\-/-
set 速度=2

rem ASCII码的08就是退格特殊控制符
set 退格=


:b
for /l %%i in (0,1,200) do call :a %%i
goto :b
:a
set/a a=%1%%4
set/p=!b:~%a%,1!<nul
ping/n %速度% 127.1>nul
set/p=%退格%<nul
goto :eof
“如果是转动的效果P处理是无法实现的”,实现了吧,嘻嘻……

[ Last edited by redtek on 2006-10-30 at 10:58 PM ]

   此帖被 +7 点积分      点击查看详情   
评分人:【 无奈何 分数: +4  时间:2006-10-31 00:17
评分人:【 xycoordinate 分数: +1  时间:2007-3-3 04:28
评分人:【 Eblis 分数: +2  时间:2007-3-3 06:02




    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 22:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 7 楼』:  

你一定没试,它绝对是在(在原地)转动的效果!

楼主:“批处理中想用“\-/”表示一个进度状态,好像“-”在翻滚那样”,
绝是对这样的效果:)


每显示一个字符后,就后退一个格,然后再显示,
(很多命令行软件的提示都是这样的原理!)
这样,因为速度和人的视觉差原因,会产生一个动画的(类似转动起来的效果),
和早期压缩软件的处理效果动画一样。

[ Last edited by redtek on 2006-10-30 at 10:51 PM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 22:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 8 楼』:  

等等,我代码COPY错了,我这里好几个,弄混了,
不过原地转动效果真的可以,等一下。



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 22:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 9 楼』:  

等等,……我又看了,不是我COPY错了!
你一定是直接在CMD SHELL上使用COPY  CON  文件名.bat
来COPY上面代码的,!

所以,那里面的“退格”=我后面放的是退格的特殊控置字符,
所以,你COPY的时候可就是真的产生退格键了,而这里的退格符号你是COPY不上去的。


(你直接COPY到记事本里,然后再存就没事了!)
(原来是copy con 文件名.bat 直接COPY上面内容时,系统怎么翻译那个退格符为真的退了两个格,致使变量赋值的语句不完整了)

向9527道歉,原来就是这个原因,哈哈……

[ Last edited by redtek on 2006-10-30 at 11:08 PM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 22:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 10 楼』:  

直接下载,原地转动的批处理动画代码。

附件 1: q.rar (2006-10-30 23:00, 295 bytes, 下载附件所需积分 1 点 ,下载次数: 310)


    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-30 23:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 11 楼』:  

兄弟愚劣,能否告知:
rem ASCII码的08就是退格特殊控制符
set 退格=
中的退格是怎么得到的?

2006-10-31 00:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 12 楼』:  

) 第一种方法:

  使用 MS-DOS自带的(WINDOWS CMD SHELL也有)  ECIT.COM 编辑器得输入特殊控置符。

  进入 EDIT.COM ,按 CTRL+P组合键,然后可以输入特殊字符:
  如:退格键(让光标左移)控制符的ASCII码为 08,
    则可以   ALT+08 (按住ALT键不入,然后按右侧小键盘上的0和8键,都输完了再松开ALT键。
  注:CTRL+P只一次有效,如果再输入第二个控置字符,还得再按一次CTRL+P


) 第二种方法:用Debug得到
-D

0AF5:0100  20 20 20 20 20 0D 0A 20-20 20 20 0D 0A BA 8C 8A   .    ..    .....
0AF5:0110  73 03 E9 4E FF 2B C8 74-D0 F6 06 15 34 00 E4 0A   s..N.+.t....4...
0AF5:0120  F6 06 15 99 20 75 0A 80-3E D2 99 00 75 BB 49 74   .... u..>...u.It
0AF5:0130  B8 BA 0D 8C EB 23 33 D2-87 D1 B8 01 42 CD 21 A3   .....#3.....B.!.
0AF5:0140  DF 99 89 16 E1 99 80 3E-C5 96 00 74 9C B4 40 CD   .......>...t..@.
0AF5:0150  21 72 5F C6 06 E3 99 1A-C3 E8 FF 0F FE 06 D2 96   !r_.............
0AF5:0160  80 3E D1 96 00 74 48 8B-1E 13 99 83 FB 00 7E 33   .>...tH.......~3
0AF5:0170  8B 0E E1 99 8B 16 DF 99-8B C1 0B C2 74 21 B8 00   ............t!..
-E 100

0AF5:0100  20.08

-W

Writing 0000D bytes
-Q
) 象退格这种特殊控置字符,直接在命令行上输入 ALT+08的话,它当时就“执行”了,直接就相当于你按了退格,把左边的内容删掉了。

  所以,在edit.com或其它方式间接输入比较方便。

) 如果是 07 (响铃),在命令行上输入 GTRL+G、ALT+07都可以。

) 其它控置字符详见ASCII码表
  详见如下贴子有更详细的内容……

  DOS学习入门 & 精彩文章 (教学室) » ASCII码表及含义
      http://www.cn-dos.net/forum/viewthread.php?tid=1641&fpage=1&highlight=ascii%E7%A0%81


  

[ Last edited by redtek on 2006-10-31 at 01:30 AM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-31 01:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 13 楼』:  

非常感谢!

2006-10-31 01:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
3742668
荣誉版主





积分 2013
发帖 718
注册 2006-2-18
状态 离线
『第 14 楼』:  

3,用VBS:
createobject("scripting.filesystemobject").opentextfile("tmp.txt",2,true).write chr(8)
关于本主题的问题,其实在本版很早转载的一篇贴子(<深入挖掘Windows脚本技术>)里有提到过,现在看来领悟的朋友似乎比较少。

   此帖被 +2 点积分     点击查看详情   
评分人:【 redtek 分数: +2  时间:2006-10-31 02:38


2006-10-31 01:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 15 楼』:  

ASCII码与码表以及相关内容详见如下贴子~:)



ASCII码表及含义
http://www.cn-dos.net/forum/view ... ight=ascii%E7%A0%81


ASCII编码表
http://www.cn-dos.net/forum/view ... amp;highlight=ASCII


dos界面中看ASCII码星球大战
http://www.cn-dos.net/forum/view ... amp;highlight=ASCII

[原创]无奈何签名代码略析
http://www.cn-dos.net/forum/view ... 0%E5%A5%88%E4%BD%95



有关ASCII码以及关于ANSI动画、绘图、定义键盘的更高级的贴子有:
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ANSI.SYS程序的使用
http://www.cn-dos.net/forum/view ... &highlight=ANSI


脱离CONFIG里ANSI驱动实现屏幕彩色显示效果
http://www.cn-dos.net/forum/view ... &highlight=ANSI


RAR支持ANSI转义字符
http://www.cn-dos.net/forum/view ... &highlight=ANSI

(如上:RAR支持ANSI转义字符)
(   可以使自己的网站的RAR压缩包的个性化版权以及压缩包内容声明等)
(   可以间接利用RAR的这个自带特性简单学习ANSI-在无纯DOS的环境下)
(   可以间接画自己喜欢的图像等)

(   关于ANSI做图的内容,在gOOGLE.com上可以检索到很多工具)
(   同时,还可以检索到BMP图像文件转ANSI字符图工具等……)

[ Last edited by redtek on 2006-10-31 at 05:29 AM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-31 01:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] [4] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: