Board logo

标题: [文件操作] 【已解决】批处理命令dir遇到的问题,不知大算不算BUG [打印本页]

作者: hztccy    时间: 2024-6-3 08:02     标题: 【已解决】批处理命令dir遇到的问题,不知大算不算BUG

这是原先的提问
【【【今天在使用dir命令输出一个文件夹时,发现的目前尚不确定时系统引起的,还是命令本身使用不对

以下请看!

使用该命令【D:\>dir /s /b /a:d WXWvrvtemp>D:\123.txt】提示【找不到文件】

首先WXWvrvtemp是一个文件夹,其次WXWvrvtemp文件夹内是有文件的,再然后WXWvrvtemp文件夹内是没有其他子目录的。

然后就出现了一个【找不到文件】的提示了。

PS:但是如果我往WXWvrvtemp文件夹内在增加一个WXWvrvtemp文件夹则是可以正常输出路径!!!!】】】

以下是发现这一情况出现后的处理方法,又【aloha20200628】大佬提供解决方式。

使用命令【dir】命令时,出现上述问题,可以在搜索增加通配符,目前在多台电脑城测试可行。

【D:\>dir /s /b /ad *WXWvrvtemp*>D:\123.txt】

这样即可正确输出路径结果。
作者: hnfeng    时间: 2024-6-3 08:41

经试验,确实如此。与预期的不同
不知原因
作者: Batcher    时间: 2024-6-3 09:04

回复 1# hztccy


    经试验,我的Win11系统一切正常。
作者: qixiaobin0715    时间: 2024-6-3 09:15

win10下测试正常。
与预期不同?不知你的预期是什么。
作者: hnfeng    时间: 2024-6-3 09:26

win10下测试正常。
与预期不同?不知你的预期是什么。
qixiaobin0715 发表于 2024-6-3 09:15



    预期就是我预估应该的结果

我的也是win10
作者: smss    时间: 2024-6-3 10:09

回复 5# hnfeng 管理员权限运行试试
作者: hnfeng    时间: 2024-6-3 10:19

回复  hnfeng 管理员权限运行试试
smss 发表于 2024-6-3 10:09



    一样的。这个与权限应该无关
作者: qixiaobin0715    时间: 2024-6-3 10:22

经测试:
1.如果当前目录中存在WXWvrvtemp文件夹,就会把WXWvrvtemp作为路径,显示WXWvrvtemp文件夹下的所有文件夹(包括子文件夹);
2.如果当前目录中不存在WXWvrvtemp文件夹,就会在当前目录中(包括子目录)查找是否存在名称为WXWvrvtemp文件夹,如果存在则显示其路径,否则不显示任何信息。
作者: hnfeng    时间: 2024-6-3 10:35

本帖最后由 hnfeng 于 2024-6-3 10:36 编辑

奇怪了,这么多人说没问题
说没问题的,是不是没有领会楼主的场景啊。
建议这样试一下:
建文件夹  C:\temp
打开CMD(不管是否以管理员身份),进入 C:\temp
我们在此文件夹内试验

创建一个文件夹,例如 C:\temp\testABC
此时 C:\temp\dir /s /b /ad
可以列出来 C:\temp\testABC,这是正常的

但是如果 C:\temp\dir /s /b /ad testABC
不显示任何结果(我觉得也应该列出来 C:\temp\testABC  吧)

如果再创建文件夹 C:\temp\testABC\test123
此时 C:\temp\dir /s /b /ad testABC
就能出结果了
C:\temp\testABC\test123
作者: aloha20200628    时间: 2024-6-3 12:39

回复 1# hztccy

dir命令用/s以及/ad等参数管控是否下行查询,还保留了用通配符 ‘开关’ 下行查询的方法,例如
    dir /b/ad *WXWvrvtemp*
即可在当前目录中查找名为 WXWvrvtemp 的目录,否则会转为查找名为 WXWvrvtemp 目录中的子目录,而如果没有子目录,就会出现一楼所述结果...

作者: hztccy    时间: 2024-6-3 15:25

回复  hztccy

dir命令用/s以及/ad等参数管控是否下行查询,还保留了用通配符 ‘开关’ 下行查询的方法, ...
aloha20200628 发表于 2024-6-3 12:39



    大佬你的方式是对的,增加通配符后,即可正常显示当前目录,

     但是这里就出现了一个问题,我在相同的Windows10系统版本上,多台电脑进行测试,其中两台电脑提示找不到文件,另外三台电脑则正常输出了路径,且都是没有增加通配符的情况
作者: Five66    时间: 2024-6-3 16:13

dir 是显示目录中的内容 而不是显示目录本身
dir /s /b /a:d WXWvrvtemp 是显示WXWvrvtemp中的目录 , 而不是显示WXWvrvtemp本身,除非WXWvrvtemp是个文件




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2