如何实现批处理(data.bat)来改变时间:在线等待

comeonstuding 2006-10-15 08:04:40
详细见
http://community.csdn.net/Expert/topic/5083/5083566.xml?temp=.5795862
...全文
287 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
comeonstuding 2006-10-16
  • 打赏
  • 举报
回复
具体点好吗
comeonstuding 2006-10-16
  • 打赏
  • 举报
回复
可以啊
Kvci 2006-10-16
  • 打赏
  • 举报
回复
2. 将某一文件内容或命令执行结果作为循环范围:

假如你有一个文件 todel.txt,里面是所有要删除的文件列表,现在你想将里面列出的每个文件都删掉。假设这个文件是每个文件名占一行,象这样:
c:\temp\a1.txt
c:\temp\a2.txt
c:\temp\subdir\b3.txt
c:\temp\subdir\b4.txt

那么可以用FOR来完成:


for /f %a in (todel.txt) do del %a

这个命令还可以更强大。比如你的 todel.txt 并不是象上面例子那么干净,而是由DIR直接生成,有一些没用的信息,比如这样:


Volume in drive D is DATA Volume Serial Number is C47C-9908 Directory of D:\tmp 09/26/2001 12:50 PM 18,426 alg0925.txt 12/02/2001 04:29 AM 795 bsample.txt 04/11/2002 04:18 AM 2,043 invitation.txt 4 File(s) 25,651 bytes 0 Dir(s) 4,060,700,672 bytes free

for 仍然可以解出其中的文件名并进行操作:


for /f "skip=5 tokens=5" %a in (todel.txt) do @if exist %a DEL %a

当然,上面这个命令是在进行删除,如果你只是想看看哪些文件将被操作,把DEL换成echo:


for /f "skip=5 tokens=5" %a in (todel.txt) do @if exist %a echo %a

你将看到:

alg0925.txt bsample.txt invitation.txt

skip=5表示跳过前5行(就是DIR输出的头部信息),tokens=5表示将每行的第5列作为循环值放入%a,正好是文件名。在这里我加了一个文件存在判断,是因为最后一行的"free"刚好也是第5列,目前还想不出好的办法来滤掉最后两行,所以检查一下可保万无一失。

大熊猫侯佩 2006-10-16
  • 打赏
  • 举报
回复
不借助第三方 exe 文件么?
z_l 2006-10-15
  • 打赏
  • 举报
回复
就真这么难啊,竟然没人会》》

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧