Dávka na kopírování (přesun podle data) – Příkazový řádek – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Dávka na kopírování (přesun podle data) – Příkazový řádek – Fórum – Programujte.comDávka na kopírování (přesun podle data) – Příkazový řádek – Fórum – Programujte.com

 

iuos0
Duch
25. 11. 2008   #1
-
0
-

ahoj,

potřebuju poradit s dávkou, která by podle názvu souboru název__251108_123456.xls poznala, že ho má nakopírovat do adresáře \xyz\rrrr\mm\dd\ ?

251108 je ddmmrr

s tím, že si ten adresář vytvoří, pokud není?

co jsem zatím našel, tak by se eventuelně dal použít příkaz for /d ale moc moudrej z toho nejsem

případně budu vděčný za relevantní odkazy

díky moc

Nahlásit jako SPAM
IP: 62.168.0.–
iuos
KIIV
~ Moderátor
+43
God of flame
25. 11. 2008   #2
-
0
-

v linuxu se to jeste vcelku da pomoci prikazu jako cut nebo sed... a bash aliasu... (neco obdobneho jako funkce)
ikdyz uz by byl lepsi perl...

ve win me nenapada nic co by to dokazalo... (coz neznamena ze to treba neexistuje)
pokud mas na tom kompu ale treba perl, php nebo umis v C tak to tak jak tak neni moc problem

Nahlásit jako SPAM
IP: 80.188.94.–
Program vždy dělá to co naprogramujete, ne to co chcete...
iuos0
Duch
26. 11. 2008   #3
-
0
-

To KIIV :

díky za odpověď... holt se vrhnu na studium C ;-)

Nahlásit jako SPAM
IP: 62.168.0.–
iuos
KIIV
~ Moderátor
+43
God of flame
26. 11. 2008   #4
-
0
-

jen upozornuji ze C je na to trochu tezkopadnejsi...

Nahlásit jako SPAM
IP: 80.188.94.–
Program vždy dělá to co naprogramujete, ne to co chcete...
T.Nej0
Newbie
26. 11. 2008   #5
-
0
-

Nevím, jestli to funguje (zatím jsem to nezkoušel), ale mohlo by ti pomoct toto:

@echo off

rem slozka se soubory, na ktere se bude script aplikovat
set adres=d:\tomas
rem cesta ke slozce, ve ktere se budou tvorit "adresare s datumem"
set adresar=c:\data\soubory
rem soubor seznam.txt muzete po vypnuti programu bezpecne smazat
echo abc > %cd%\seznam.dat
dir /B /S %adres%\*_*.* >> %cd%\seznam.txt
set a=1
:start
for /f "skip=%a% tokens=1" %%I in (%cd%\seznam.txt) do (set soubor=%%I)
for /f "delims=_ tokens=2" %%O in (%soubor%) do (set soubor2=%%O )
set den=%soubor2:~0,2%
set mesic=%soubor2:~2%
set rok=%soubor2:~4%
set rok2=%rok:~2%
set /a b=%a%+1
set a=%b%
if not exist %adresar%\%den%\%mesic%\%rok2%\*.* (mkdir %adresar%\%den%\%mesic%\%rok2% )
xcopy %adres%\%soubor% %adresar%\%den%\%mesic%\%rok2%\
goto start
:end
echo ===============================================================================
echo hotovo
echo ukoncite stisknutim kterekoliv klavesy
pause > nul
goto :eof

ten kód potřebuje ještě trochu upravit, ale pokud jsem neudělal chybu, tak by měl splnit účel.

Nahlásit jako SPAM
IP: 88.103.141.–
iuos0
Duch
27. 11. 2008   #6
-
0
-

To T.Nej : To T.Nej :

prima, vyzkouším to a uvidíme... každopádně díky moc - i kdyby to nejelo, tak už aspoň mám nějakou představu a zbytek si snad najdu na netu

ještě jednou díky

Nahlásit jako SPAM
IP: 62.168.0.–
iuos
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý