vbscript - Deleting files using vbs without hard coding variables -
how can modify following script in order avoid hard coding location, date-stamp , extension , specify details input variables in command prompt example "cscript del.vbs d:\temp 16/08/2013 jpg".
option explicit dim strextensionstodelete,strfolder dim objfso, maxage, includesubfolders ' ************************************************************ ' setup ' ************************************************************ ' folder delete files strfolder = "d:\test\" ' delete files sub-folders? includesubfolders = true ' comma separated list of file extensions ' files extensions provided in list below deleted strextensionstodelete = "jpg" ' max file age (in days). files older deleted. maxage = 1 ' ************************************************************ set objfso = createobject("scripting.filesystemobject") deletefiles strfolder,strextensionstodelete, maxage, includesubfolders wscript.echo "finished" sub deletefiles(byval strdirectory,byval strextensionstodelete,byval maxage,includesubfolders) dim objfolder, objsubfolder, objfile dim strext set objfolder = objfso.getfolder(strdirectory) each objfile in objfolder.files each strext in split(ucase(strextensionstodelete),",") if right(ucase(objfile.path),len(strext)+1) = "." & strext if objfile.datelastmodified < (now - maxage) wscript.echo "deleting:" & objfile.path & " | " & objfile.datelastmodified objfile.delete exit end if end if next next if includesubfolders = true ' recursive delete each objsubfolder in objfolder.subfolders deletefiles objsubfolder.path,strextensionstodelete,maxage, includesubfolders next end if end sub
your cscript command looks ok. then, add vbscript capture arguments
location = wscript.arguments.item(0) date-stamp = wscript.arguments.item(1) extension = wscript.arguments.item(2) note, strings, need parse date value actual date.
Comments
Post a Comment