Solved

How do delete a folder after X days old

Posted on 2014-11-08
18
168 Views
Last Modified: 2014-11-09
Using Windows XP, I have the following batch file:

@echo off
cls

SET month=%DATE:~4,2%
SET day=%DATE:~7,2%
SET year=%DATE:~-4%
SET hour=%time:~0,2%
SET sec=%time:~3,2%
SET millis=%time:~6,2%


set folder=%year%_%month%%day%_%hour%%sec%

rem remove spaces from single digit values
set folder=%folder: =%

mkdir %folder%

:Done


This makes a folder based and named based on date and time.  This folder will later be populated for backup purposes.  Of course this can get rather large so I would like to also add to the batch to check for any folders X days old and then delete those folders.

Is this possible?

Thank you
0
Comment
Question by:thandel
  • 10
  • 5
  • 2
  • +1
18 Comments
 
LVL 24

Expert Comment

by:NVIT
ID: 40430193
Would this help? Change 15 to the DaysOld you want.

FORFILES /d -15 "cmd /c if @isdir==TRUE del /q /s /f @file"

Open in new window

0
 
LVL 23

Expert Comment

by:Eirman
ID: 40430209
Unless you have a particular reason to go the DOS route to delete older backups, it might make more sense to go for a backup program that keeps a certain number (that you specify .. e.g. 10) of backups and when it created a new backup, the oldest one is deleted.

This is just one example of such a program ...
http://www.kls-soft.com/klsbackup/
0
 

Author Comment

by:thandel
ID: 40430347
Thanks NewVillageIT... will this work for a folder/directory?
0
Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

 

Author Comment

by:thandel
ID: 40430349
I'm getting an error that Forfiles is not a recognizable command.
0
 

Author Comment

by:thandel
ID: 40430361
I have Windows XP so  I don't think XP supports this command.
0
 
LVL 24

Expert Comment

by:NVIT
ID: 40430381
The @isdir==TRUE option checks for directories.

Before doing your real folders, test against an area that has some folders and files.

I haven't confirmed this but, it's in the Windows 2003 Resource Kit at http://www.microsoft.com/en-us/download/details.aspx?id=17657

XP versions here: http://www.petri.com/download_windows_xp_reskit_tools.htm
0
 

Author Comment

by:thandel
ID: 40431270
What is that 12MB installation going to do, install several .exe tool files?  Can you attach the forfile to this?  I only need that and not the other 12+MB supporting files.
0
 

Author Comment

by:thandel
ID: 40431277
OK never mind I installed the kit but forfiles was not part of the installation.
0
 
LVL 24

Assisted Solution

by:NVIT
NVIT earned 250 total points
ID: 40431293
Attached. Rename .txt to .exe
forfiles.txt
0
 
LVL 15

Expert Comment

by:ZabagaR
ID: 40431295
0
 

Author Comment

by:thandel
ID: 40431378
Thanks now getting an error invalid argument/option  with forfiles
0
 
LVL 15

Accepted Solution

by:
ZabagaR earned 250 total points
ID: 40431518
I already had a batch script to do this from a while back, I'll just repost below:
I keep 14 days and my path to search is C:\MyFolderPath

@echo off
setlocal

set DAYS_TO_KEEP=-14
set BACKUP_PATH=C:\MyFolderPath

forfiles /d %DAYS_TO_KEEP% /p "%BACKUP_PATH%" /c "cmd /c if @isdir==TRUE rd /s /q @path"
0
 
LVL 24

Expert Comment

by:NVIT
ID: 40431532
thandel,

Did you get it working? If not, can you post a sample code?
0
 

Author Comment

by:thandel
ID: 40431856
Getting an error that "P" can not be empty.  Here is my code:

@echo off
cls

SET month=%DATE:~4,2%
SET day=%DATE:~7,2%
SET year=%DATE:~-4%
SET hour=%time:~0,2%
SET sec=%time:~3,2%
SET millis=%time:~6,2%
SET DAYS_TO_KEEP=-1


set folder=%year%_%month%%day%_%hour%%sec%
rem remove spaces from single digit values
set folder=%folder: =%

set set BAKPath=C:\Documents and Settings\Todd\My Documents\DbBAK\%folder%

mkdir %folder%
cd %folder%

forfiles /d %DAYS_TO_KEEP% /p "%BAKpath%" /c "cmd /c if @isdir==TRUE rd /s /q @path"
0
 

Author Comment

by:thandel
ID: 40431857
Sorry cut n' paste error but didn't resolve the P variable error:

Should be: set BAKPath=C:\Documents and Settings\Todd\My Documents\DbBAK
0
 

Author Comment

by:thandel
ID: 40431858
I have it working... my set command had typos "set set".... working now!

Thanks
0
 

Author Comment

by:thandel
ID: 40431860
Does everyone agree that a 50/50 split is fair?    Ultimately used ZabagaR's forfile line
0
 
LVL 24

Expert Comment

by:NVIT
ID: 40431918
OK, thandle.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
difference between registeries 3 95
Move XP PC to Vmware 22 147
Windows print sharing 1 77
Where can I find a virus scanner for XP SP2? 22 60
We have adopted the strategy to use Computers in Student Labs as the bulletin boards. The same target can be achieved by using a Login Notice feature in Group policy but it’s not as attractive as graphical wallpapers with message which grabs the att…
When you start your Windows 10 PC and got an "Operating system not found" error or just saw  "Auto repair for startup" or a blinking cursor with black screen. A loop for Auto repair will start but fix nothing.  You will be panic as there are no back…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question