Компьютерный форум 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=213534)

porokh 18-08-2011 10:21 1734343

Переименовать файлы по маске и времени создания
 
В папке D\Inbox есть файлы
v1(1).txt (время создания 00:25)
v1(2).txt (время создания 02:25)
v1(3).txt (время создания 09:25) Цифры в скобках будут каждый день новые.1,2,3 ---т.д.
Необходимо переименовывать только файл v1(2).txt у которого время создания 02:25), остальные файлы переименовываться не должны.
Переименовываться файлы должны по маске v*.* на 2r(имя файла), т.е. было v1(2).txt стало 2rv1(2).txt.

madmasles 18-08-2011 11:13 1734382

porokh,
Попробуйте так:
Код:

#include <File.au3>

$sDir = 'D:\Inbox'
$sHour = '02'
$sMin = '25'
$sPref = '2r'
$iError = 0
$aFiles = _FileListToArray($sDir, '*(*).txt', 1)
If Not @error Then
    For $i = 1 To $aFiles[0]
        $aTimes = FileGetTime($sDir & '\' & $aFiles[$i], 1)
        If Not @error Then
            If $aTimes[3] == $sHour And $aTimes[4] == $sMin Then
                If Not FileMove($sDir & '\' & $aFiles[$i], $sDir & '\' & $sPref & $aFiles[$i], 1) Then $iError += 1
                ExitLoop ;закомментировать, если переименовывается не один файл
            EndIf
        EndIf
    Next
EndIf
If $iError Then
    MsgBox(16, 'Error', 'Не переименовано файлов: ' & $iError)
EndIf



Время: 19:32.

Время: 19:32.
© OSzone.net 2001-