【发布时间】:2015-08-31 18:25:03
【问题描述】:
我写了一个非常简单的批处理文件,它将输出定向到一个文件。这是正文:
DATE /T > FileTreeList.txt
TIME /T >> FileTreeList.txt
cd >> FileTreeList.txt
tree /f /a >> FileTreeList.txt
当我在包含大量文件夹和文件的目录中运行批处理文件时,输出文件 (FileTreeList.txt) 在 ~621KB 处截断。如果我从命令模式运行批处理文件并将输出直接输出到文件,我会得到相同的结果。但是,如果我让结果显示在屏幕上,它会显示所有结果。
为什么会发生以及如何解决?
【问题讨论】:
-
如果将所有命令括在括号中并且只打开一次 FileTreeList.txt 进行写入,是否会得到相同的结果?
(date /t & time /t & cd & tree /f /a) >FileTreeList.txt -
您确定上面 4 行的批处理文件以与您在命令提示符窗口中手动运行最后一个命令并将结果输出到窗口时相同的权限(= 相同的用户帐户)运行吗?这对于遍历所有目录的访问权限很重要,这可能是对不同树列表的解释。
-
我在批处理文件中尝试了您的四行,首先将当前目录切换到驱动器 C: 的根目录,然后在 Windows 7 x64 上将四个命令的输出写入
F:\Temp\FileTreeList.txt。包含整个树的批处理文件执行完成后,列表文件有 8.3 MB。
标签: batch-file output filesize