1

我正在尝试在 Windows 批处理文件中实现以下目标。

我在一个文件夹中有多个文本文件。我想创建一个新的文本文件,其中根据文件上的时间戳添加文本文件中的所有数据(从旧到新)

例如我有以下文件

163570-23.txt(假设修改日期为 9 月 13 日上午 9:15) 10we362s4.txt(修改日期为 9 月 12 日晚上 8:56) w93l-2367.txt(修改日期为 9 月 13 日下午 1:42)

我想按以下顺序将上述文件中的数据复制到组合文件(例如:combine.txt)中。

10we362s4.txt 163570-23.txt w93l-2367.txt

我不知道如何处理上述情况。任何帮助表示赞赏并提前感谢您的时间。

-将要

4

2 回答 2

2

尝试类似的东西
for /f "tokens=*" %%a in ('dir c:\temp\*.txt /b /od') do type "%%a">>concat.txt

于 2013-09-13T19:30:09.490 回答
2
del combine.txt
for /F "tokens=*" %%i in ('dir /b /OD *.txt') do type "%%i" >> combine.txt

这个怎么运作:

  • del combine.txt
    • 我们不想将文本添加到之前生成的 combine.txt 文件中
  • 目录 /b /OD *.txt
    • 获取当前文件夹中的 .txt 文件列表(按日期顺序)
  • 对于 /F "tokens=*" %%i (...) 做 ...
    • 对于刚刚生成的文件列表,对每个项目运行以下命令。
  • 键入 %%i >> combine.all
    • 对于每个项目,获取指定文件的文本并将其附加到 combine.txt
于 2013-09-13T19:35:53.003 回答