dir命令(下)

★使用多个FileName参数
可以使用多个FileName参数。用空格、逗号或分号隔开文件名。可以在FileName中使用通配符(?*)来显示一组文件。

实例1dir G: *.txt *.apk
★使用通配符
可以使用通配符,如星号(*)或问号(?),来代表文件名的一个或多个字符,以显示文件的子集或子目录。
星号(*)可使用星号代替任何字符串。例如
dir*.txt列出当前目录中所有具有以.txt开头(如.txt.txt1.txt_old)的扩展名的文件。
dirread*.txt列出当前目录中所有以“read”开头而且扩展名以.txt开头(如.txt.txt1.txt_old)的文件。
dirread*.*列出当前目录中带有任意扩展名的以“read”开头的所有文件。
切记,星号通配符总是使用短文件名映射,因此,您可能会得到意外的结果。例如,下面的目录包含2个文件,t.txt2t97.txt
您可能以为键入dirt97*会返回文件t97.txt。然而,键入dirt97*将返回两个文件,这是因为,文件t.txt2的短名称是T97B4~1.TXT,星号通配符使用其短名称映射,于是将文件t.txt2匹配到t97*。类似地,键入delt97*将删除这两个文件。
★问号(?)使用问号代替名称中的单个字符。例如,键入:
dirread???.txt列出当前目录中所有带有.txt扩展名而且以“read”开头并且后面最多跟三个字符的文件,包括Read.txtRead1.txtRead12.txtRead123.txtReadme1.txt,但是不包括Readme12.txt

★指定文件显示属性
如果使用其Attributes中指定多个值的/a,则dir只显示那些带有所有指定属性的文件的名称。例如,如果使用/a:r-h/ar-h指定/a,并以r-h作为属性,则dir只显示非隐藏的只读文件的名称。
★指定文件名排序
如果指定了多个SortOrder值,dir首先通过第一个标准对文件名进行排序,然后再通过第二个标准排序,以此类推。例如,如果使用/o:e-s/oe-s指定/o,并以e-s作为SortOrder的值,则dir将根据扩展名对目录名和文件名从大到小进行排序,然后显示最终结果。按照扩展名字母顺序排序使得没有扩展名的文件名最先显示,目录名次之,然后是具有扩展名的文件名。
★使用重定向符号和管线
在使用重定向符号(>)dir输出发送到文件,或者使用管线(|)dir输出发送到其他命令时,请使用/a:-d/b只列出文件名。可以使用FileName以及/b/s来指定dir在当前目录及其子目录中搜索所有匹配FileName的文件名。Dir对查找到的每个文件名只列出其驱动器号、目录名、文件名和文件扩展名、每行一个路径。在使用管线重定向之前,应该在Autoexec.nt文件中设置TEMP环境变量。

注意XP中,TEMP环境变量已经被系统所设置。
预置dir参数

我们可能经常使用DIR命令,但DIR命令的默认设置并不让人满意,我们可以自己来调整它的设置。
通过将带有DIRCMD环境变量的set命令包含在autoexec.bat文件中,可以预置dir参数。可以在setdircmd中使用dir参数的任意有效组合,其中包括文件的位置和名称。
例如,要使用DIRCMD环境变量将宽行显示格式(即/w)设置为默认格式,请在autoexec.bat文件中键入以下命令:
setdircmd=/w
对于dir命令的单次使用,可以清除DIRCMD环境变量的某个参数。为此,请在dir命令提示符下键入要清除的参数,并在参数前面加上减号。例如:
dir/-w
要更改DIRCMD默认设置,请键入:
set dircmd==NewParameter
新的默认设置对所有后接的dir命令有效,直到bat命令结束为止。
要清除所有默认设置,请键入:
setdircmd=
要查看DIRCMD环境变量的当前设置,请键入:
set
Set显示环境变量及其设置的列表。

注意xp中系统本身并没有设置dircmd变量

示例

系统对dir的默认设置是不遍历子目录的,但是下面的实例2却可以通过set dircmd=/s来让“dir”命令可以遍历子目录。

实例2

@echo off

set dircmd=/s

dir

pause

注意:dircmd=/s,bat命令结束后就无效了。它应该和普通的变量一样。

要按字母顺序以宽格式一个接一个地显示所有目录,请确保根目录是当前目录,然后键入:
dir/s/w/o
Dirw的方式列出根目录的名称、根目录中文件的名称(包括扩展名)。然后,dir列出该目录树中每个子目录包含的子目录名和文件名,然后再对子目录的子目录进行这样的递归。
要更改前面的示例,使dir显示文件名和扩展名而省略目录名

实例3
@echo off

dir /s/w/o/a:-d

pause

列出目录下所有的文件和目录的完整路径形式(包含子目录)

实例4

dir /s/b

列出目录下所有的文件的完整路径形式(包含子目录)

实例5

dir /s/b/a:-d

列出目录下所有的目录的完整路径形式(包含子目录)

实例6

dir /s/b/a:d
要打印目录列表,请键入
dir>prn
指定prn时,目录列表发送到与LPT1端口相连接的打印机上。如果打印机连接在其他端口上,则必须使用正确端口的名称替换prn
dir命令的输出重定向到文件。可以通过用文件名替换prn,还可以键入路径。例如,要将dir输出定向到Records目录的Dir.doc文件中,请键入:
dir>\records\dir.doc
如果Dir.doc不存在,dir将创建该文件,除非Records目录也不存在。在这种情况下,会出现如下消息:
Filecreationerror
要显示驱动器C上所有目录中带.txt扩展名的所有文件名的列表,请键入:
dirc:\*.txt/w/o/s
Dir以宽格式按字母顺序显示每个目录中匹配文件名的列表,

<wbr style="line-height:25px"><wbr style="line-height:25px"></wbr></wbr>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值