Duran Posted August 24, 2010 Share Posted August 24, 2010 Hey just thought I would throw this up for you guys that might have some use for it and if you guys can tell me if it is clean or not >< I am terrible sometimes at neatness. Used two examples I found on your guys wiki and array from and example works nicely Will give you guys props on your help pages they have helped a lot! expandcollapse popupLocal $iMax Local $i ; All month data for each day as well. Yes I know some months dont have 31 days just lazy to change it. Local $janData = "1-1-|1-2-|1-3-|1-4-|1-5-|1-6-|1-7-|1-8-|1-9-|1-10-|1-11-|1-12-|1-13-|1-14-|1-15-|1-16-|1-17-|1-18-|1-19-|1-20-|1-21-|1-22-|1-23-|1-24-|1-25-|1-26-|1-27-|1-28-|1-29-|1-30-|1-31-" Local $febData = "2-1-|2-2-|2-3-|2-4-|2-5-|2-6-|2-7-|2-8-|2-9-|2-10-|2-11-|2-12-|2-13-|2-14-|2-15-|2-16-|2-17-|2-18-|2-19-|2-20-|2-21-|2-22-|2-23-|2-24-|2-25-|2-26-|2-27-|2-28-|2-29-|2-30-|2-31-" Local $marData = "3-1-|3-2-|3-3-|3-4-|3-5-|3-6-|3-7-|3-8-|3-9-|3-10-|3-11-|3-12-|3-13-|3-14-|3-15-|3-16-|3-17-|3-18-|3-19-|3-20-|3-21-|3-22-|3-23-|3-24-|3-25-|3-26-|3-27-|3-28-|3-29-|3-30-|3-31-" Local $aprData = "4-1-|4-2-|4-3-|4-4-|4-5-|4-6-|4-7-|4-8-|4-9-|4-10-|4-11-|4-12-|4-13-|4-14-|4-15-|4-16-|4-17-|4-18-|4-19-|4-20-|4-21-|4-22-|4-23-|4-24-|4-25-|4-26-|4-27-|4-28-|4-29-|4-30-|4-31-" Local $mayData = "5-1-|5-2-|5-3-|5-4-|5-5-|5-6-|5-7-|5-8-|5-9-|5-10-|5-11-|5-12-|5-13-|5-14-|5-15-|5-16-|5-17-|5-18-|5-19-|5-20-|5-21-|5-22-|5-23-|5-24-|5-25-|5-26-|5-27-|5-28-|5-29-|5-30-|5-31-" Local $junData = "6-1-|6-2-|6-3-|6-4-|6-5-|6-6-|6-7-|6-8-|6-9-|6-10-|6-11-|6-12-|6-13-|6-14-|6-15-|6-16-|6-17-|6-18-|6-19-|6-20-|6-21-|6-22-|6-23-|6-24-|6-25-|6-26-|6-27-|6-28-|6-29-|6-30-|6-31-" Local $julData = "7-1-|7-2-|7-3-|7-4-|7-5-|7-6-|7-7-|7-8-|7-9-|7-10-|7-11-|7-12-|7-13-|7-14-|7-15-|7-16-|7-17-|7-18-|7-19-|7-20-|7-21-|7-22-|7-23-|7-24-|7-25-|7-26-|7-27-|7-28-|7-29-|7-30-|7-31-" Local $augData = "8-1-|8-2-|8-3-|8-4-|8-5-|8-6-|8-7-|8-8-|8-9-|8-10-|8-11-|8-12-|8-13-|8-14-|8-15-|8-16-|8-17-|8-18-|8-19-|8-20-|8-21-|8-22-|8-23-|8-24-|8-25-|8-26-|8-27-|8-28-|8-29-|8-30-|8-31-" Local $sepData = "9-1-|9-2-|9-3-|9-4-|9-5-|9-6-|9-7-|9-8-|9-9-|9-10-|9-11-|9-12-|9-13-|9-14-|9-15-|9-16-|9-17-|9-18-|9-19-|9-20-|9-21-|9-22-|9-23-|9-24-|9-25-|9-26-|9-27-|9-28-|9-29-|9-30-|9-31-" Local $octData = "10-1-|10-2-|10-3-|10-4-|10-5-|10-6-|10-7-|10-8-|10-9-|10-10-|10-11-|10-12-|10-13-|10-14-|10-15-|10-16-|10-17-|10-18-|10-19-|10-20-|10-21-|10-22-|10-23-|10-24-|10-25-|10-26-|10-27-|10-28-|10-29-|10-30-|10-31-" Local $novData = "11-1-|11-2-|11-3-|11-4-|11-5-|11-6-|11-7-|11-8-|11-9-|11-10-|11-11-|11-12-|11-13-|11-14-|11-15-|11-16-|11-17-|11-18-|11-19-|11-20-|11-21-|11-22-|11-23-|11-24-|11-25-|11-26-|11-27-|11-28-|11-29-|11-30-|11-31-" Local $decData = "12-1-|12-2-|12-3-|12-4-|12-5-|12-6-|12-7-|12-8-|12-9-|12-10-|12-11-|12-12-|12-13-|12-14-|12-15-|12-16-|12-17-|12-18-|12-19-|12-20-|12-21-|12-22-|12-23-|12-24-|12-25-|12-26-|12-27-|12-28-|12-29-|12-30-|12-31-" ; Paths to all files that are gonna be deleted. Local $1Path = "D:\1" Local $2Path = "D:\2" Local $3Path = "D:\3" Local $4Path = "D:\4" Local $5Path = "D:\5" Local $6Path = "D:\6" Local $7Path = "D:\7" Local $8Path = "D:\8" Local $9Path = "D:\9" ; Matching month to delete. Every 2 months. Local $Delete = @MON - 2 While 1 Select Case $Delete = 1 $arr = StringSplit($janData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 2 $arr = StringSplit($febData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 3 $arr = StringSplit($marData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 4 $arr = StringSplit($aprData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 5 $arr = StringSplit($mayData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 6 $arr = StringSplit($junData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 7 $arr = StringSplit($julData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 8 $arr = StringSplit($augData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = 9 $arr = StringSplit($sepData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next EndIf Case $Delete = 10 $arr = StringSplit($octData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR ) DirRemove($2Path & $arr[$i] & @YEAR ) DirRemove($3Path & $arr[$i] & @YEAR ) DirRemove($4Path & $arr[$i] & @YEAR ) DirRemove($5Path & $arr[$i] & @YEAR ) DirRemove($6Path & $arr[$i] & @YEAR ) DirRemove($7Path & $arr[$i] & @YEAR ) DirRemove($8Path & $arr[$i] & @YEAR ) DirRemove($9Path & $arr[$i] & @YEAR ) Next Exit EndIf Case $Delete = -1 $arr = StringSplit($novData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR - 1 ) DirRemove($2Path & $arr[$i] & @YEAR - 1 ) DirRemove($3Path & $arr[$i] & @YEAR - 1 ) DirRemove($4Path & $arr[$i] & @YEAR - 1 ) DirRemove($5Path & $arr[$i] & @YEAR - 1 ) DirRemove($6Path & $arr[$i] & @YEAR - 1 ) DirRemove($7Path & $arr[$i] & @YEAR - 1 ) DirRemove($8Path & $arr[$i] & @YEAR - 1 ) DirRemove($9Path & $arr[$i] & @YEAR - 1 ) Next Exit EndIf Case $Delete = 0 $arr = StringSplit($decData, "|") If IsArray($arr) Then Local $iMax = UBound($arr) For $i = 0 to $iMax - 1 DirRemove($1Path & $arr[$i] & @YEAR - 1 ) DirRemove($2Path & $arr[$i] & @YEAR - 1 ) DirRemove($3Path & $arr[$i] & @YEAR - 1 ) DirRemove($4Path & $arr[$i] & @YEAR - 1 ) DirRemove($5Path & $arr[$i] & @YEAR - 1 ) DirRemove($6Path & $arr[$i] & @YEAR - 1 ) DirRemove($7Path & $arr[$i] & @YEAR - 1 ) DirRemove($8Path & $arr[$i] & @YEAR - 1 ) DirRemove($9Path & $arr[$i] & @YEAR - 1 ) Next Exit EndIf EndSelect WEndFile Assassin-fixed.au3 Link to comment Share on other sites More sharing options...
Tvern Posted August 24, 2010 Share Posted August 24, 2010 Usually if your code contains allot of code that looks the same, there is a way to write it more efficiently. I think this code does the same: Local $nYear = @YEAR Local $nMonth = @MON -2 If $nMonth < 1 Then $nYear -= 1 $nMonth += 12 EndIf For $nPath = 1 To 9 ;this is to create the prefix "D:\1 - D:\9" For $nDay = 1 To 31 ;this will loop through day 1 to 31 (I'm lazy like you) Local $sPath = "D:\" & $nPath & $nMonth & "-" & $nDay & "-" & $nYear ;isn't there supposed to be a "\" between $nPath and $nMonth? It wasn't in your original script. ConsoleWrite("Deleting: " & $sPath & @CRLF) ;easy to see what's happening. DirRemove($sPath,1) ;added the recursion parameter Next Next Link to comment Share on other sites More sharing options...
Duran Posted August 24, 2010 Author Share Posted August 24, 2010 Usually if your code contains allot of code that looks the same, there is a way to write it more efficiently. I think this code does the same: Local $nYear = @YEAR Local $nMonth = @MON -2 If $nMonth < 1 Then $nYear -= 1 $nMonth += 12 EndIf For $nPath = 1 To 9 ;this is to create the prefix "D:\1 - D:\9" For $nDay = 1 To 31 ;this will loop through day 1 to 31 (I'm lazy like you) Local $sPath = "D:\" & $nPath & $nMonth & "-" & $nDay & "-" & $nYear ;isn't there supposed to be a "\" between $nPath and $nMonth? It wasn't in your original script. ConsoleWrite("Deleting: " & $sPath & @CRLF) ;easy to see what's happening. DirRemove($sPath,1) ;added the recursion parameter Next Next Nice work that definitely looks cleaner and easier to put in code then my longer version. Thats why I love this board, always have someone that can compress it haha. Oh and the "1 - 9" was just to put in something since the folders I have it deleting from are peoples names. Oh and I did forget a "\" when I edited it to post on here good eye. Link to comment Share on other sites More sharing options...
Tvern Posted August 25, 2010 Share Posted August 25, 2010 In that case the multiple DirRemoves make more sense. But I'd still try to use a loop like this: Local $nYear = @YEAR Local $nMonth = @MON -2 Local $sNames = "NameA|NameB|NameC|NameD" ;etc... Local $aNames = StringSplit($sNames,"|",2) If $nMonth < 1 Then $nYear -= 1 $nMonth += 12 EndIf For $sName In $aNames ;this is to create the prefix "D:\NameA - D:\NameD" For $nDay = 1 To 31 ;this will loop through day 1 to 31 (I'm lazy like you) Local $sPath = "D:\" & $sName & "\" & $nMonth & "-" & $nDay & "-" & $nYear ;isn't there supposed to be a "\" between $nPath and $nMonth? It wasn't in your original script. ConsoleWrite("Deleting: " & $sPath & @CRLF) ;easy to see what's happening. DirRemove($sPath,1) ;added the recursion parameter Next Next Link to comment Share on other sites More sharing options...
ReFran Posted August 25, 2010 Share Posted August 25, 2010 .. For $nDay = 1 To 31 ;this will loop through day 1 to 31 (I'm lazy like you).._DateDaysInMonthHTH, Reinhard Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now