2013-05-10 35 views
0

我们正在敲定一个法律问题并需要提供所有问题的列表。 我的电脑上有一个包含所有电子邮件,word文档,pdf,jpg等的文件夹,并希望快速创建一个列出文件名,类型,大小,创建数据的电子表格。目录中所有文件的电子表格

这可以用批处理文件完成吗?如果是这样,怎么样?

+0

是否有子文件夹?该文件夹和/或子文件夹中是否有其他文件不应在电子表格中列出? – azhrei 2013-05-10 01:13:39

+0

没有subufolder,没有不需要的文件。绝对在文件夹中需要列出。大约有2600个文件。 我试过'dir *。*> FileList.csv',但是它并没有真正将我想要的细节分隔列 – 2013-05-10 01:18:13

回答

0

这是一个应该让你去的基本版本。

它使用for来收集有关文件夹(和所有子文件夹)中的文件的信息,输出为csv。

您可以调整(或请求调整帮助),例如为文件类型制作漂亮的名称。此批次给您的时间戳是“修改日期”而不是“创建日期”。如果这很关键,我们也可以解决这个问题。

@echo off 
setlocal 
set DATA_DIR=%1 
if not defined DATA_DIR (
    echo You must specify a folder with your data files. 
    exit /b 1 
) 
echo FILE, TYPE, SIZE, TIMESTAMP 
for /f "delims=" %%f in ('dir /s /b /a-d %DATA_DIR%') do (
    echo %%~f, %%~xf, %%~zf, %%~tf 
) 

要使用:

 C:\...\> make_csv.cmd c:\data > FileList.csv 

,你会得到类似FileList.csv:

 
FILE, TYPE, SIZE, TIMESTAMP 
C:\data\that one.doc, .doc, 0, 10/05/2013 11:14 AM 
C:\data\this one.txt, .txt, 6, 10/05/2013 11:14 AM 
C:\data\sub\another.jpg, .jpg, 6, 10/05/2013 11:15 AM 
+0

-1,它列出了上次更改的日期,而不是创建的日期。 – Endoro 2013-05-10 03:10:09

+0

@Endoro - 我在答案中已经说过了,如果OP想要它,而且没有提供,那就提议继续。 – azhrei 2013-05-10 04:34:50

+0

我非常为我的丑陋错误道歉:facepalm :.如果你要编辑你的答案,我会改变投票。 – Endoro 2013-05-10 22:32:12

相关问题