木木
视窗环境下,我们在Windows资源管理器窗口中常常可以看到文件的列表显示,默认的文件列表显示方式只有固定的几种。但有些情况下,需要一个目录甚至一个磁盘分区中所有文件的特殊形式的列表,我们可能希望以一张二维表格的形式来显示具有某类属性的文件,甚至还需要将这些列表信息用作编程或别的用途。那么,如何按照具体需要来生成形式各异的二维文件信息列表呢?
巧用DIR各类参数配合生成
我们可借助于命令提示符窗口来完成二维文件信息列表的生成。在命令提示符窗口中执行Windows内部命令DIR,同时附带各种灵活多变的参数,可生成按需定制的各种文件列表信息。参数的使用在DIR命令发挥作用的同时起很关键的作用。在需要显示的文件列表中,既可以包含各种属性的文件和子目录,也可以控制文件排序方式,还可以用三种基本文件时间来控制列表显示。
要获得Windows文件夹(不包含子文件夹)所有EXE可执行程序的文件列表,且按文件名顺序进行排序,这时可执行如下命令(图2):
DIR C:\WINDOWS\*.EXE /ON
从执行结果中,我们看到一张分别以日期、时间、大小、文件名排序的二维文件列表。要获得这个列表的文本内容,可以在命令提示符窗口中执行鼠标右键菜单命令“标记”,然后在窗口中拖动鼠标框选文件列表所在的矩形区域,选中之后,直接按回车键,区域的文件列表信息就进入到剪贴板中了。之后,新建一个记事本文件,然后用Ctrl+V快捷键即可将刚才生成的列表粘贴到记事本文件中。
还有一个简单的方法能直接获取文件列表,就是在以上命令的最后直接添加一个后缀“>D:\FILELIST.TXT”,这样整个命令行变成了:
DIR C:\WINDOWS\*.EXE /ON >D:\FILELIST.TXT
执行如上命令后,在D盘就生成一个含有文件列表信息的二维字符文件FILELIST.TXT,用记事本打开可见其内容(图3)。
对这个文件的首尾稍加处理,留下中间的比较规整的行列信息,即可提供给程序或Excel表格等进行处理了。
我们希望获取所有Windows系统目录下(包含各级子文件夹)的EXE文件的二维信息列表,且需要列表按文件由大到小的顺序来排序,这时,可以构建如下的命令行(图4):
DIR C:\WINDOWS\*.EXE /S /O-S >D:\FILELIST.TXT
其中的参数/O-S表示按文件大小反序排列,也就是按由大到小排列。如果指定/OS则为由小到大排列。执行该命令获得的文件列表信息如图4所示。
根据以上思路,我们可以很容易地构建出各种按需求生成二维文件列表的命令。
生成系统目录中按文件创建时间排序的所有EXE文件列表:
DIR C:\WINDOWS\*.EXE /S /TC >D:\FILELIST.TXT
生成系统目录中按文件上次访问时间排序的所有EXE文件列表:
DIR C:\WINDOWS\*.EXE /S /TA >D:\FILELIST.TXT
生成系统目录中按文件上次写入时间排序的所有EXE文件列表:
DIR C:\WINDOWS\*.EXE /S /TW >D:\FILELIST.TXT
生成系统目录中按文件类别分组排序的所有文件的信息列表:
DIR C:\WINDOWS\*.* /S /OE >D:\FILELIST.TXT
(参数/OE表示按文件扩展名分组排序)