Re: prejmenovani souboru

From: Petr Pokorny <mail (zavinac)>
Date: 15. 11. 2005, 14:16 CET
MilanK <konfera@kev.sk>:


> Ja som hladal moznost docielit nazov yyyy-mm-dd_nazov.*
> Bohuzial som nic take nenasiel, tak teraz pouzivam utilitu
> namedate.exe (neviem odial ju mam), ktora robi podobne ako
> to chces - "nazov.log" premenuje na "nazov 06-Nov-2005.log".
> Bohuzial sa neda nijako inak prekonfigurovat, a ten doplneny
> datum nie je cas suboru, ale datum kedy si to premenoval.

Koukam ze se k tomu nikdo nema ... tak ja do toho jdu.

Oboji (tj. datum souboru i dnesni datum) lze udelat pomoci prikazoveho
radku, teda radeji pomoci davkoveho souboru (*.bat).

Urcite je jednodussi to udelat pomoci VBS kterej je soucasti w2k i win XP,
ale kdyz to chcete mermomoci pomoci prikazoveho radku tak se teda pojdme
drbat levou rukou za pravym uchem...

Tohle ulozit do *.bat souboru a spustit s argumentem jmena souboru o ktery 
nam jde. Lze si pak poskladat jmeno souboru z aktualniho data i z data 
souboru. Jsou tam pouzity "Promenne s modifikatorem", jejich popis je v 
helpu prikazu FOR a CALL. Dale pak rozvinuti promennych, viz help prikazu
SET. Je to staveny na nas format casu, na non CZ windows to nemusi
fungovat korektne...

Bude to fungovat jen pod w2k a winXP.

Enjoy!


----- zacatek -------------------------------------------
@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 prikaz 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
----- konec -------------------------------------------

-pp21- 
Received on Tue, 15 Nov 2005 14:16:01 +0100

This archive was generated by hypermail 2.1.8 : 15. 11. 2005, 14:17 CET