Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   периодическое удаление папок (http://forum.oszone.net/showthread.php?t=178981)

silence 23-06-2010 15:48 1440191

периодическое удаление папок
 
Есть видеосервер, на котором видео каждый день записывается в новую папку. Через н-дней нужно удалять самую старую из них. Как это осуществить на AutoIt ?

beve 23-06-2010 17:52 1440279

Цитата:

Цитата silence
нужно удалять самую старую из них. Как это осуществить на AutoIt ? »

Вот быстрый пример кода:
Код:

#include <array.au3>
#Include <File.au3>
Global $sYear=3000
;берем нереальный год, если в директории есть хоть одна папка, то при первой же проверке, этот год будет сменен на реальный.
Global $sMon=12
Global $sDay=31
Global $OldFolder=""

$sRoot = @DesktopDir
$aDIR =
_FileListToArray($sRoot, '*', 2)

if isarray($aDIR) then
For
$i=1 to $aDIR[0]
   
$aCreateTime FileGetTime($sRoot & "\"&$aDIR[$i])
   
if $sYear>$aCreateTime[0] then
       
$sYear=$aCreateTime[0]
       
$OldFolder=$aDIR[$i]
       
ContinueLoop
    endif
   
    if
$sMon>$aCreateTime[1] then
   
$sMon=$aCreateTime[1]
       
$OldFolder=$aDIR[$i]
       
ContinueLoop
    endif
   
    if
$sDay>$aCreateTime[2] then
   
$sDay=$aCreateTime[2]
       
$OldFolder=$aDIR[$i]
       
ContinueLoop
    endif
Next
Endif

If
FileExists($sRoot&"\"&$OldFolder) Then
   
MsgBox(4096, "Директория: "&$sRoot, "Эту папку следует удалить, как созданную раньше всех других в этой директории: "&$sRoot&"\"&$OldFolder)
;DirRemove($sRoot&"\"&$OldFolder, 1) ;Осторожно!!! данная функция удалит всю папку из файлами (название папки отображается в msgbox)
endif

Данный скрипт дан только для наглядности, его нужно усложнить, добавив различные проверки на ошибки - это уже ваша задача.
Цитата:

Цитата silence
Через н-дней »

Для запуска этого скрипта, можете дописать код типа планировщика, который в указанную вами дату будет делать "чистку", запуская на обработку код, который выше или использовать сторонний какой продукт (имеется ввиду планировщик) для запуска скрипта.
P.S. В переменной $sRoot храниться путь к папке, в которой находятся ваши подпапки с видеофайлами.


Время: 16:43.

Время: 16:43.
© OSzone.net 2001-