【发布时间】:2013-10-13 09:00:18
【问题描述】:
我正在编写一个批处理脚本来自动删除超过 7 天的特定文件夹,以防止我的磁盘变满。有什么方法可以自动执行此操作,以便在可用磁盘空间低于 2GB 时运行?还是我只需要自动化任务并让它在启动时检查是否满足运行要求?
【问题讨论】:
标签: batch-file automation
我正在编写一个批处理脚本来自动删除超过 7 天的特定文件夹,以防止我的磁盘变满。有什么方法可以自动执行此操作,以便在可用磁盘空间低于 2GB 时运行?还是我只需要自动化任务并让它在启动时检查是否满足运行要求?
【问题讨论】:
标签: batch-file automation
@echo off
set space_cmd=2147483648
:loop
FOR /F "delims=" %%i IN ('dir c:\') DO set space=%%i
set process_01=%space%
set process_02=%process_01:~-26%
set process_03=%process_02:.=%
set process_04=%process_03: bytes free=%
set result=%process_04%
cls
echo.
echo.
title %result%/%space_cmd%
echo Free space: %result%
echo Limit: %space_cmd%
if "%result%" LEQ "%space_cmd%" goto command
ping -n 2 127.0.0.1>nul
goto loop
:command
mkdir c:\temp_7_days_older
robocopy c:\* c:\temp_7_days_older /move /minage:7 /maxage:10
rmdir /q /s c:\temp_7_days_older
goto loop
试试这个
【讨论】:
您可以在任务调度程序中安排脚本定期运行。
对于在磁盘空间不足时删除文件的脚本,它需要一直运行并定期检查自身。
【讨论】: