![Windows 命令删除驱动器上最老和第二个最老的文件夹?](https://linux22.com/image/525120/Windows%20%E5%91%BD%E4%BB%A4%E5%88%A0%E9%99%A4%E9%A9%B1%E5%8A%A8%E5%99%A8%E4%B8%8A%E6%9C%80%E8%80%81%E5%92%8C%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%9C%80%E8%80%81%E7%9A%84%E6%96%87%E4%BB%B6%E5%A4%B9%EF%BC%9F.png)
我想使用 Windows 命令行脚本从驱动器中删除最旧和第二个最旧的文件夹。
这是从 BackupAssist 运行的,它仅支持在 GUI 中使用 Windows 命令行命令/DOS 来执行备份前或备份后脚本。我宁愿不编写命令行来调用 Powershell 脚本。
谢谢
答案1
这将在当前目录中找到最旧和下一个最旧的目录。注释掉命令echo
并取消注释rd
命令以使其正常运行。
@echo off
rem cmd file to delete oldest and second oldest directories
setlocal enabledelayedexpansion
for /F "delims=" %%i in ('dir /b/ad-l/o-d') do @set nextoldest=!oldest! & SET oldest=%%i
echo %oldest%
echo %nextoldest%
rem rd /s/q %oldest%
rem rd /s/q %nextoldest%
如果您想让它查看整个驱动器,请将命令更改dir
为如下所示:
dir /b/ad-l/o-d/s \
那将需要很长时间。
请注意,我排除了连接点-l
。