我看到了类似的问题,但还没有任何效果。
最终目标是获得一个 csv,其中 col1 是文件路径,col2 是创建日期。
假设我有一个目录 C:/dir1,其中有 C:/dir1a 和 C:/dir1b,并且 dir1a 和 dir1b 中都有文件。
我能做到
dir /s /b > dirfiles.csv
这确实给了我所有的文件名,但是当我这样做时
dir /S /B /T:C > dirfiles_time.csv
没有什么不同的事情发生。
如何创建每个文件的路径列表(不仅仅是文件的目录)以及该文件的创建时间?
谢谢
编辑 我不关心实际目录,只关心文件本身的路径。删除 /b 留下了很多我需要删除的信息
Directory of D:\Dir1\dir1a
03/29/2018 11:20 AM <DIR> .
03/29/2018 11:20 AM <DIR> ..
03/29/2018 11:20 AM 5,583,992 16385 yadayada.tif
03/29/2018 11:20 AM 9,560,580 2278 yada.jpg
2 File(s) 15,144,572 bytes
要适应您的
[batch-file]
标签,只需从批处理文件中运行此 PowerShell
命令即可。
@Powershell -NoP -C "GCI $(GCI \"D:\Dir1\"|?{$_.PSIsContainer}|%%{$_.FullName}) -R|?{!$_.PSIsContainer}|Select FullName,CreationTime|Export-CSV -NoT \"dirfiles_time.csv\""
您可以更改初始目录
D:\Dir1
和csv输出文件dirfiles_time.csv
,只是注意不要删除它们的打开和关闭\"
序列。
如果您只想要文件名而不需要路径,请将
Select FullName,CreationTime
更改为 Select Name,CreationTime
。同样,如果您希望使用最后修改时间,请将 Select FullName,CreationTime
更改为 Select FullName,LastWriteTime
。
我用这个作为 @Powershell -NoP -C "GCI $(GCI "D:\Test"|?{$.PSIsContainer}|%%{$.FullName}) -R|?{!$_.PSIsContainer}|选择全名, CreationTime|Export-csv -NoT "D:\Test\Bhavesh.csv"" 它可以很好地满足我的要求,但此外我只想要 XLS 文件列表