Forfiles Command – Old file handling

20. November 2010 | In: Batch

Ich habe ein Batch Script erstellt welches alte Files und Ordner löscht. Für das script kann keine Haftung übernommen werden. Bitte zuerst mit unproduktiven Daten testen!

@echo off
Title Deleting SQL Snapshotfiles

Set Day=5
Set Pfad="D:\SQL"
Set Log=Deleting_Snapshot.log

echo Starte Task...
echo [%date%-%time%]    Starte Deleting SQL Snapshotfiles >>%Log%
echo.
echo.
echo.
echo [%date%-%time%]    Deleting Old Snapshot Files >>%Log%

:: REMOVE OLD SNAPSHOT FILES
FORFILES /P %Pfad% /S /M *.* /D -%Day% /C "cmd /c echo @relpath & del @path /f /q"

:: REMOVE EMPTY SUBFOLDERS
echo [%date%-%time%]    Deleting Empty Subfolders >>%Log%
for /f "tokens=*" %%A in ('dir /ad /s /b %Pfad% ^|Sort /Reverse') do (
 RmDir "%%A" 2>NUL
)

:: REMOVE FOLDER, IF EMPTY
RmDir %Pfad% 2>NUL

echo [%date%-%time%]    Finish Deleting SQL Snapshotfiles >>%Log%
exit

Krypto Kurse

About me