运行x5 .bat文件,暂停,然后运行下5个,依此类推

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

背景:操作系统:win10。单个根文件夹:“ U:\ 11Web \ gallery-dl”。

在根目录下,我有1400多个子文件夹(在这些子文件夹下面没有子文件夹(而且永远不会))。 (在根目录中也没有单个/外部文件(并且永远不会))。

每个子文件夹都有其自己的.bat文件aGallery-dl.bat。

@echo off
setlocal EnableExtensions DisableDelayedExpansion
pushd "%~dp0" || exit /B
move /Y "Folder2.jpg" "Folder.jpg"
for %%I in (.) do set "FOLDER=%%~nxI"
"%ProgramFiles(x86)%\gallery-dl\gallery-dl.exe" -d "U:\11Web\gallery-dl" --download-archive "%~dp0zzzGDB.sqlite3" "https://www.deviantart.com/%FOLDER%/gallery/all"
if not errorlevel 1 if exist "zzzGDB.sqlite3" del "Folder.jpg"
popd
endlocal

我通常手动运行aGallery-dl.bat;打开下一个文件夹,双击运行;下次运行文件夹等,直到我在5至10个cmd窗口之间运行。稍后,当他们全部完成后,我可能会通过另外5-10个文件夹,如此进行。执行每个aGallery-dl.bat时,将下载请求的文件,完成后,对Folder.jpg进行一些清理,然后关闭每个cmd窗口。

问题:

希望可以自动执行这些操作。想在根文件夹中运行一个批处理文件]
  1. 创建/更新所有子文件夹的list.txt /数据库文件。列表可以在这里工作,类似dir / l> list.txt这样简单,但是却不知道如何保存计数?

  2. 在列表的前5个子文件夹中运行aGallery-dl.bat,暂停15分钟(超时?),循环播放,然后命中接下来的5个文件夹,依此类推,直到1400+完成...没关系,如果我必须重新启动,或者一周后又回来并必须重新运行该批处理文件,它将再次从第一个文件夹重新开始.... sqlite3每个文件夹中的数据库文件,其中保留了所有先前下载的文件信息。每次都从第一个文件夹开始将是一项功能,仅下载那些已更新的文件。

  3. 我没有开始的代码/示例,因为我无法完全围绕它开始真正的学习。

提前感谢。

背景:操作系统:win10。单个根文件夹:“ U:\ 11Web \ gallery-dl”。在根目录中,我有1400多个子文件夹(在这些子文件夹下面没有子文件夹(并且永远不会)。 (也没有...

batch-file cmd directory pause
1个回答
0
投票

有时它就在我的面前。一次只能使用一个文件夹,但是可以使用。以后有1400多个文件夹,我应该不错...感谢您的帮助,斯蒂芬!

@echo off
setlocal EnableExtensions DisableDelayedExpansion
for /D %%I in ("G:\tmp\*") do ("%%I\zzzGallery-dl.bat"
endlocal
© www.soinside.com 2019 - 2024. All rights reserved.