2013-07-05 47 views
0

我有如下的一般格式简单的动态生成批处理文件:批处理文件没有按预期生成输出?

@echo off 
dir /a/s "C:\inetpub\wwwroot\files\clients\26\properties" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\pFiles_26.dat" 
dir /a/s "C:\inetpub\wwwroot\files\clients\26\adverts" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\aFiles_26.dat" 
dir /a/s "C:\inetpub\wwwroot\files\clients\28\properties" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\pFiles_28.dat" 
dir /a/s "C:\inetpub\wwwroot\files\clients\28\adverts" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\aFiles_28.dat" 
dir /a/s "C:\inetpub\wwwroot\files\clients\32\properties" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\pFiles_32.dat" 
dir /a/s "C:\inetpub\wwwroot\files\clients\32\adverts" | findstr "File(s)" > "C:\inetpub\wwwroot\scripts\foldersize\aFiles_32.dat" 

等等......还有它需要通过运行约280不同的文件夹...但产生例如生成的文件pFiles_26.dat或类似的一切最终成为零长度的文件...

我知道所有的这些目录中都有一些内容,所以结果应该都可以改变...

至于我可以告诉命令不会以他们应该的方式开火......我如何确保这些命令实际上一个接一个地开启,并导致包含文件数递归值的实际输出的文件和总目录大小

+0

您的代码适用于我,我得到每个文件夹和所有文件夹中的文件数/文件大小。 – Endoro

+0

@Endoro我试过自己运行它,但所有的文件都是零字节的长度... 你会做什么,这是获得结果? –

+1

如果文件为空,'findstr'没有找到'file(s)'。在命令提示符下使用'echo on'选项检查代码。 – Endoro

回答

0

检查您是否拥有对目标文件夹的写入权限。例如,试试你的代码到桌面文件夹。请注意,如果是这种情况,则不应得到零字节文件。

+0

我有写权限,并且该文件夹的只读权限已关闭......我认为这可能是早期的问题,但我仍然得到同样的结果... –

+0

我设法找到一个解决方案,我用的平台,通过生成代码(ColdFusion的)中循环,并执行并行线程执行目录列表... ' ' –

相关问题