[英]Windows batch is not listing complete dir content
我有一个简单的批处理,它将特定文件夹及其子文件夹的内容保存到文本文件中。
这是原始命令。 在Windows 7环境中使用。
dir I:\Logistics\Hermes\1445\LIN\ /a /s /b > C:\out\LIST.txt
问题:它创建文件并列出大多数文件夹和文件,但不是全部。
这是LIST.txt文件的摘录。 前4行缺少该文件夹中的pdf文件。
I:\Logistics\Hermes\1445\LIN\557487
I:\Logistics\Hermes\1445\LIN\557488
I:\Logistics\Hermes\1445\LIN\557489
I:\Logistics\Hermes\1445\LIN\557669
I:\Logistics\Hermes\1445\LIN\552371\XXXX_641428_20141022_1604.zip
I:\Logistics\Hermes\1445\LIN\552372\XXXX_859038_20141022_1604.zip
I:\Logistics\Hermes\1445\LIN\552379\Overview
I:\Logistics\Hermes\1445\LIN\552379\Overview\manuals_overview_1445_LIN.pdf
I:\Logistics\Hermes\1445\LIN\552381\LTBJ_886469_20141022_1800.zip
我不知道为什么。 没有过滤器,并且列出了其他PDF。 这些文件不是只读的。 用户对这些目录具有完全的读/写权限。
是因为文件夹名称只是数字吗?
感谢您对此批次的任何帮助。 谢谢 !
您的命令包括目录名称,因此您将I:\\Logistics\\Hermes\\1445\\LIN\\557487
视为目录。
要排除,请添加: /ad
(非目录属性)
dir /s /b
命令的行为是枚举完成的每个级别,因此,在您的情况下,列出了I:\\Logistics\\Hermes\\1445\\LIN
的内容。 当此文件夹被完全地列举,它开始列举每个子文件夹的内容,所以,内容552371
的内容之前列举557487
(在NTFS驱动要素名称排序)。 到达557487
文件夹后,您缺少的pdf文件将在下面的几行中。
好的,多亏了MC ND的提示,我终于发现这是内存问题。 12000个文件夹中的大约80000个文件对于dir来说实在太多了。 保存的文本文件仅在大约5000行后随机停止。 最后,我将整个目录分为几个子文件夹。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.