Radek Šafránek <safranek (zavinac) fg.cz>: > jde o windows 2003 server: > Jedna aplikace lije "kvantum" souboru do jednoho adresare. > Typicky 2000 denne. > > Rozumne bude, pokud by se vse, co je starsi nez definovany pocet dnu > mazalo. > V tomto pripade bude stacit nejspise tyden. > > Lze tohoto "jednoduse" (a jak) dosahnout bat souborem - jen s > vyuzitim dosu ve win serveru? > Je to en edice - lokalni prostredi je cz. > > Zatim se rozhlizim ruzne po netu, nachazim batch soubry, > ktere ale vyuzivaji externi prikazy... do tech se mi zatim jit > nechce... Jo, IMHO je to řešitelný. Pomoci rozvinutych promennych (viz HELP FOR) si rozhodis dnesni datum do jednotlivych promennych, vynasobis je sekundama (SET /A) a sectes je dohromady. Pak totez udelas pro kazdy soubor (FOR) a casy v sekundach porovnas. Pokud bude starsi nez xy sekund, smazes ho. Nasledujici davka ti ukaze jak ziskas cas a datum souboru, pocitani si musis udelat sam pres SET /A a porovnani pres IF a zbytek uz zvladnes ;o))) I kdyz ted me napada, ze bys mohl zkusit porovnat dva datumy, jestli to IF vyhodnoti spravne. Mozna to bude chodit. Jenze na to by sis do nejake promenne stejne nejprve musel sestavit datum tyden stary... Jo a ta ukazka pocita s ceskym formatem data a casu, na anglickym by to nechodilo. -pp21- ------------------------------- @echo off if not exist %1 goto nonFILE set tmpDATE=%DATE% set tmpTIME=%TIME: =0% set actualDAY=%tmpDATE:~3,2% set actualMONTH=%tmpDATE:~6,2% set actualYEAR2=%tmpDATE:~11,2% set actualYEAR4=%tmpDATE:~9,4% set actualHOUR=%tmpTIME:~0,2% set actualMIN=%tmpTIME:~3,2% set actualSEC=%tmpTIME:~6,2% set fileDATETIME=%~t1 set fileDAY=%fileDATETIME:~0,2% set fileMONTH=%fileDATETIME:~3,2% set fileYEAR2=%fileDATETIME:~8,2% set fileYEAR4=%fileDATETIME:~6,4% set fileHOUR=%fileDATETIME:~11,2% set fileMIN=%fileDATETIME:~14,2% set fileNAME=%~1 set fileNAMEPART=%~n1 set fileEXTPART=%~x1 set filePATH=%~dp1 set fileFULLPATH=%~f1 echo. echo popis promenna obsah echo ------------------------------------ echo aktualni datum a cas: echo den actualDAY %actualDAY% echo mesic actualMONTH %actualMONTH% echo rok (2 cifry) actualYEAR2 %actualYEAR2% echo rok (4 cifry) actualYEAR4 %actualYEAR4% echo hodina actualHOUR %actualHOUR% echo minuta actualMIN %actualMIN% echo sekunda actualSEC %actualSEC% echo. echo datum a cas souboru: echo den fileDAY %fileDAY% echo mesic fileMONTH %fileMONTH% echo rok (2 cifry) fileYEAR2 %fileYEAR2% echo rok (4 cifry) fileYEAR4 %fileYEAR4% echo hodina fileHOUR %fileHOUR% echo minuta fileMIN %fileMIN% echo. echo dalsi udaje o souboru: echo cele jmeno fileNAME %fileNAME% echo jmeno fileNAMEPART %fileNAMEPART% echo pripona fileEXTPART %fileEXTPART% echo cesta filePATH %filePATH% echo uplna cesta fileFULLPATH %fileFULLPATH% echo. echo. echo Z techto promennych uz si muzete poskladat co chcete, echo treba prokaz pro prejmenovani souboru: echo REN "%fileNAME%" "%fileYEAR4%-%fileMONTH%-%fileDAY%_%fileNAME%" echo. goto END :nonFILE echo. echo Tento soubor se musi volat s argumentem JMENO SOUBORU echo. echo priklad: %0 soubor.txt echo. :END ---------------------------------Received on 21. 05. 2007, 16:35 CEST
This archive was generated by hypermail 2.2.0 : 21. 05. 2007, 16:35 CEST