需要帮助写入文本文件

问题描述 投票:0回答:2

我的文件夹包含超过40,000个视频文件。

我希望能够在文本文件中全部列出它们

我已经使用了命令:

@echo off
set dirpath=%location
dir %dirpath% /-p /o:gn > "%dirpath%\DirContents.txt"
exit

但是,这只列出了cmd中的目录命令。

我希望能够做到这一点:拥有一个具有以下内容的文本文件:

文件名,修改日期

我的另一个问题是某些文件具有多个版本。我希望文本文件仅包含最新版本。我不能按名称分辨是哪个新名称,因为它们的文件名都相同,除了前面有一些随机数。更改日期的唯一方法是更改​​日期。但是,我知道这是否无法完成。

请帮助我,

杰克

file batch-file cmd scripting notepad
2个回答
0
投票
import glob import os import time with open("DirContents.txt","w") as fOut: fOut.write("FileName, DateModified\n") files = glob.glob("~/Videos/*") for fName in files: stat = time.ctime(os.stat(fName).st_mtime) fOut.write("\""+ fName + "\", \"" + stat+"\"\n")

0
投票
这可以使用PowerShell轻松完成。如果您使用的是受支持的Windows版本,它将安装PowerShell。

SET "LOCATION=C:\src\t" powershell -NoLogo -NoProfile -Command ^ "Get-ChildItem -Path %LOCATION% |" ^ "ForEach-Object { '{0},{1}' -f @($_.Name, $_.LastWriteTime) }"

如果您可以在没有cmd.exe的情况下使用PowerShell,则更加简单。

$Location = 'C:\src\t' Get-ChildItem -Path $Location | ForEach-Object {'{0},{1}' -f @($_.Name, $_.LastWriteTime)}

© www.soinside.com 2019 - 2024. All rights reserved.