要删除的批处理文件 Chrome / Opera 旧安装版本文件夹

Batch file to delete Chrome / Opera old install version folders

Opera 和 Chrome 为新版本创建文件夹。例如,%ProgramW6432%\Opera 下有:
57.0.3098.63_0
58.0.3135.21
58.0.3135.26
58.0.3135.30
58.0.3135.37
58.0.3135.45
58.0.3135.59
资产
old_status

我想写一个批处理文件,删除在安装新版本过程中创建的所有旧 Opera 版本文件夹,除了最新的两个最新文件夹。在这种情况下:58.0.3135.45 和 58.0.3135.59 文件夹。 注:对于Chrome类似,不过就是将"new_chrome.exe"文件重命名为"chrome.exe".

我写了下面的代码来查找最旧和最新的文件夹,但我卡住了。

SETLOCAL EnableDelayedExpansion
SETLOCAL EnableExtensions

REM %ProgramW6432%\Net\Opera
REM D:\Program Files\Net\Opera
SET path=%ProgramW6432%\Net\Opera

ECHO. & ECHO. %path% & ECHO.

FOR /F " tokens=*" %%i IN ('DIR /B /AD-H /OGD "%path%*"') DO (SET fistDIR=%%i)
ECHO. & ECHO. The newest install folder created under %path% is %fistDIR% & 
ECHO.

FOR /F " tokens=*" %%j IN ('DIR /B /AD-H /OG-D "%path%*"') DO (SET lastDIR=%%j)
ECHO. & ECHO. The oldest install folder created under %path% is %lastDIR% & 
ECHO.

所以要完成脚本,不包括回显:

set "mypath=Z:\"
cd /d "%mypath%"
for /f "skip=2 delims=" %%i IN ('dir "%mypath%5*" /B /AD /O-D') do RMDIR /S /Q "%%~fi"