用于连接子目录中文件的Windows批处理

4sup72z8  于 2022-12-24  发布在  Windows
关注(0)|答案(1)|浏览(101)

目前我尝试将子目录中的txt文件与以下内容连接:

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION

SET "sourcedir=Sourcedir" 
SET "destdir=Outputdir"
MD "%destdir%">NUL 2>nul

for /D %%J in ("%Csourcedir%\*") do (
    > "%destdir%\%%~nxJ_merge.txt" (
        for /F "delims= eol=|" %%I in ('
            dir /B /A:-D-H-S /O:N "%%~J\*.txt" ^| findstr /V /I /C:"merge.txt"
        ') do (
            type "%%~J\%%I"
        )
    )
)

GOTO :EOF

问题是我的文件夹结构,我找不到合适的通配符:
C:\用户\hp\桌面\输出\这是我想要使用通配符的\节文本
因此,基本上我有许多不同命名的文件夹,但它们都包含一个名为sections_text的子目录
有没有办法通配它,或者“拉”上一级的所有文件?

zbq4xfa0

zbq4xfa01#

for /D %%J in ("%sourcedir%\*") do (
  ECHO MOVE "%%J\sections_text\*" "%%J"
)

其中sourcedir设置为C:\Users\hp\Desktop\Output
所需的MOVE命令仅用于测试目的。验证命令正确后,将ECHO MOVE更改为MOVE以实际移动文件。追加>nul以隐藏报告消息(例如1 file moved

相关问题