For命令在Windows中的妙用

在Windows中,我们经常要批量地来完成相同的工作,很多用户往往是上网搜索第三方软件来完成。其实在Windows中,巧妙地利用For命令就可以很轻松地完成很多批量工作。为了更好地理解我们的下一步实战,先让我们来看一下For命令的用法。For命令的具体格式如下:

For %variable IN (set) do command [command-parameters],

%variable——指定一个单一字母可替换的参数

(set)——指定一个或一组文件,可以使用通配符

command——指定对每个文件执行的命令

command-parameters——为特定命令指定参数或命令行开关

在批处理文件中使用 For 命令时,指定变量请使用“%%variable”,而不要用“ %variable”。变量名称是区分大小写的,所以“%i”不同于“%I”。由于For命令的用法和参数非常多,变化复杂,这里因篇幅原因就不再一一罗列了,用户可以在命令提示符后键入“For /?”来获得具体帮助。下面我们将直接进入实战,并结合实战讲述For命令的具体用法。

1. 给文本文件批量加上落款

在很多情况下,我们编辑处理完文档,都要给文件加上一个包括“通信地址、QQ、E-MAIL等等信息”的落款,如投往编辑部的稿件。如果只有一篇文章,直接输入倒也罢了,但假如你有很多这样的文件,该怎么办呢?难道每一篇稿件都要手工一个字一个字地输入那一成不变的落款吗?NO!完全没有必要这样费神,我们可以一次性地给所有文件添加上落款,假如我们要给放在“ABCDE”目录下的所有文本文件加上落款。那么就请先建一个名为Address.txt的文本文件,录入通信地址、QQ、E-mail等等信息,保存到E盘的根目录。

再新建一个文本文件,录入以下内容:

MD E:\TEMPabcde

for /r E:\ABCDE %%I in (*.txt) do copy %%I+E:\address.txt E:\tempABCDE\

for /r E:\tempABCDE %%I in (*.txt) do copy %%I E:\ABCDE\

echo ydel E:\TEMPabcde

echo yrd E:\TEMPabcde

录入完毕,经检查确认无误后,另存为“给文件加落款.bat”,也保存到E盘的根目录。现在,只需双击此批处理文件,就可以为E:\ABCDE文件夹中所有的TXT文件加上落款。

晨风提示:For命令指定参数“%I”从“E:\ABCDE”文件夹中的所有文本文件中取值 ;“/r”参数表示包括子目录。

2. 批量获取文件列表

如果我们需要制作某个目录下的文件清单,如电影文件的文件清单,可以用For命令来轻松完成。我们以制作F盘上的所有RM格式的电影文件的清单为例:

先在F盘根目录下建一个名为“列文件清单.bat”的文本文件,然后输入以下内容并保存:

For /r F:\ %%i in (*.rm) DO @echo %%~fi >>F:\RMList.txt

双击此批处理文件,即可快速列出F盘上所有的以RM为扩展名的电影文件的清单。

晨风提示:For命令指定参数“%i”从F盘的所有以RM为扩展名的文件中取值;“@echo %%

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus