Stránka 1 z 1

Skript .bat pro backup (WinXP SP2)  Vyřešeno

Napsal: 20 pro 2007 22:51
od Zkazer
Potrebuji poradit s pomerne jednoduchou veci - jednoduchou pro toho, kdo se vyzna.
Mam vytvoreny soubor s priponou .bat, ktery obsahuje skript, ktery by po spusteni mel provest backup urcite slozky na jine misto. Jen presnou kopii, nic vic.
Potrebuji ale, aby pri kazdem spusteni byla pro cilovy backup vytvorena nova slozka, ktera bude mit nazev ve formatu rok_mesic_den - napr. "2007_12_20".
Problem mam prave se spravnym vytvorenim nazvu slozky. Po hledani na webu jsem vystrachal nasledujici skript (jsem opravdu laik):

Kód: Vybrat vše

@echo off
:: variables
set drive=X:\proste slozka, kam chci backup provadet
set folder=%date:~10,4%_%date:~4,2%_%date:~7,2%
set backupcmd=xcopy /E /I /Y
echo ### Zalohuji neco ...
%backupcmd% "X:\slozka, kterou chci zalohovat" "%drive%\%folder%"
echo Zaloha je hotova!
@pause

Jde o radek

Kód: Vybrat vše

set folder=%date:~10,4%_%date:~4,2%_%date:~7,2%

Misto, aby byl vysledek "2007_12_20", vytvori se slozka s nazvem "007_0._2"
Poradi mi nekdo, jak nastavit ty promenne, aby bylo datum podle pozadavku?
Diky.

Napsal: 20 pro 2007 22:59
od X
Tak to bude jistě podporou, nebo spíše nepodporou dlouhých názvů souborů. V DOSu nic neobvyklého :lol: Tady v příkazovém řádku je to jistě kopírovaná vlastnost :lol:

Napsal: 20 pro 2007 23:12
od Zkazer
Zkusil jsem teda zmenit to cilove umisteni, aby byla cesta co nejkratsi, vysledna slozka by mela byt

Kód: Vybrat vše

F:\aa\2007_12_20

ale chova se to porad stejne, vysledek je porad

Kód: Vybrat vše

F:\aa\007_0._2

:-( :-(
Mam to z ang. fora a tem lidem to tam funguje, i kdyz ty slozky maji mnohem vice "utopene" ...

Napsal: 21 pro 2007 12:00
od Zkazer
Vcera (20.12.2007) to vytvarelo nazev slozky

Kód: Vybrat vše

F:\aa\007_0._2

o den pozdeji (21.12.2007) je slozka s nazvem

Kód: Vybrat vše

F:\aa\007_1._2

Takze to spravne opisuje z data, jen to zobrazi v mesici a ve dni jen jedno cislo, v roku jen 3 cisla.

Re: Skript .bat pro backup (WinXP SP2)

Napsal: 03 dub 2008 21:41
od franticek
Stačí upravit řádek takto (ale proč přesně ti nepovím 8) ):

Kód: Vybrat vše

set folder=%date:~9,4%_%date:~3,2%_%date:~6,2%

Re: Skript .bat pro backup (WinXP SP2)

Napsal: 09 črc 2008 09:19
od d1amond
franticek píše:Stačí upravit řádek takto (ale proč přesně ti nepovím 8) ):

Kód: Vybrat vše

set folder=%date:~9,4%_%date:~3,2%_%date:~6,2%


Dovolil bych si doplnit odpověď na otázku proč:) Funkce date u nás (na tom ostrově tedy asi jinak) vrací hodnotu st 09.07.2008 (pro datum 9.7.2008 :blush: ) A tudíž parametr %date:~9,4% mi osekne přesně tu 2008 -> od 9 pozice 4 znaky, parametr ~1,2 by mi dal st, atd....it´s easy :twisted:

Re: Skript .bat pro backup (WinXP SP2)

Napsal: 20 črc 2008 12:36
od Zkazer
Děkuji všem za pomoc a vysvětlení, extra děkuji "frantickovi", ktery mě i obeslal soukromou zprávou.

Problém tedy vyřešen, u topicu jsem zatrhnul zelenou "fajfku". Díky.