递归查找和替换文件

her*_*ron 1 windows cmd batch-file batch-processing

我想做的是跟随.我想创建一些bat文件,它将递归搜索从当前目录开始的文件,并替换为我提供的文件.对于前者 如果我想搜索并替换test1.txt,我打开这个迷你应用程序并编写text1.txt,并放置我想要替换的文件.

  • 迪尔
    • app.bat
    • test1.txt // app将递归搜索文件夹1和文件夹2,并将用test1.txt替换所有找到的结果
    • 文件夹1
    • 文件夹2

我想知道,如果因为这个原因准备好去app或bat文件?

Aac*_*ini 10

下面的批处理文件从当前目录开始,递归搜索第一个参数中给出的文件,并将其复制(同名)第二个参数中给出的文件:

@echo off
set targetName=%~NX1
set replacementFile=%~F2
call :processFolder
goto :EOF

:processFolder
rem For each folder in this level
for /D %%a in (*) do (
   rem Enter into it, process it and go back to original
   cd %%a
   if exist "%targetName%" (
      copy "%replacementFile%" "%targetName%" /Y
   )
   call :processFolder
   cd ..
)
exit /B
Run Code Online (Sandbox Code Playgroud)

例如:

app test1.txt c:\data\replacementfile.txt
Run Code Online (Sandbox Code Playgroud)