如何通过dos将多个文本文件合并为一个文件

在学习爬虫爬取小说的时候发现每次都要从第一章爬取,太浪费时间,于是博主就像能否每次只爬取更新后的章节(已经实现,有时间再总结下),然后将所有章节合并为一个文件。现在假设所有的章节按照章节逻辑顺序已经下载完毕。
这里写图片描述
直接的dir命令顺序是乱的如下图:
这里写图片描述
显然这样迭代的话文件内容是乱的。
通过查看dir命令的用法,发现有只显示文件名的参数/B,以及按照文件日期排序的/O:D,
这里写图片描述
组合起来就是DIR /O:D /B *.txt
效果如下:
这里写图片描述
type命令是显示文本内容,这样就可以通过管道命令将文件连接起来,代码如下:

@echo off
REM 延迟变量
setlocal enabledelayedexpansion
if exist 魂破九天.txt del 魂破九天.txt
for /f %%i in ('dir /o:d /b *.txt') do (
#迭代将所有文件一个个追加到一个文件中
type %%i >>魂破九天.txt 
)

最终效果图:
这里写图片描述

**设计思路:逆向分解
合成一个文件<—–迭代+写入
迭代<——-排序dir /O:D /b
写入<——-读取文件+管道命令
读取文件内容<==type
管道命令<====== <**
这种思维方式常用来解决复杂问题分解需求

猜你喜欢

转载自blog.csdn.net/qq_37608398/article/details/80659961