使用DOS批处理循环遍历目录中的所有文件

DOS Batch是Windows等效的Shell脚本,可用于执行各种不同的操作。您可以在bat文件中使用在Windows计算机上的DOS提示符下键入的任何内容来快速执行某些操作,否则这些操作将不得不重复多次。要创建一个bat文件,只需制作一个文件,并给它扩展名“ bat”。如果运行DOS提示符并导航到bat文件所在的目录,则可以键入文件名以使其执行某些操作。如果您将文件命名为“ action.bat”,则可以通过键入“ action”或“ action.bat”来运行它。从一个简单的示例开始,如果您想将文件的内容打印到屏幕上,则需要type命令,然后是文件。

type file.txt

但是,这会在屏幕上放很多垃圾。如果要创建该文件的备份,则应编写以下内容。

typefile.txt> file_back.txt

这将一个文件的内容放入另一个文件中。要遍历目录中的每个文件,您需要使用以下行。

FOR %%i IN (*.*) DO echo %%i

此代码将循环遍历目录的内容,并在屏幕上打印出每个文件名。这还将列出您放置在目录中的bat文件,因此另一种解决方案可能是从上面的目录中运行bat文件并使用以下代码。

FOR %%i IN (directory\*.*) DO echo %%i

下面的代码片段采用了前面的示例,并做了一些有用的事情。它循环遍历目录,并将找到的每个文件名放入名为list.txt的文件中。

FOR %%i IN (directory\*.*) DO echo %%i >> list.txt

>>符号将追加任何内容的文件,所以回路中的每一次迭代list.txt文件获取一行越大,直到所有的文件都已经上市。在示例目录中,list.txt文件中将显示以下内容。

directory\directory.html
directory\match.xls
directory\directory.xls
directory\file.txt
directory\file_back.txt