» Poradna » Programy

Bat příkaz: zjistit velikost souboru

 |   |  Microsoft Windows 7 Chrome 78.0.3904.97

Prosím o radu s tímto příkladem.Mám soubor hlavnifotka.tif, u něho chci zjistit jeho velikost. Pokud je jeho velikost větší než 1GB, chci aby se dávka ukončila. Pokud je hlavnifotka.tif menší než 1 GB, chci aby proběhla dávka A01.Chybu mám asi někde v té podmínce, protože i když hlavnifotka.tif má více než 1 GB, příkaz skočí na A01, dále na A02, A03, přikopíruje vše, co přikopírovat má... ale je vetší než 1 GB a to nechci.Chci, aby po překročení 1 GB skočil hned na konec.Prosím o radu, jsem úplný začátečník. Děkuji.setlocalset file=”r:\hlavnifotka.tif”set maxbytesize=1073741824FOR %%A IN (r:\hlavnifotka.tif) DO SET FileSize=%%~zAIF %FileSize% GTR %maxbytesize% (goto konec) ELSE (goto A01):A01if exist c:\prikopirovat01.tif call davka01.exe c:\prikopirovat01.tifif exist c:\prikopirovat01.tif call davka02.exe r:\hlavnifotka.tifif exist c:\prikopirovat01.tif del c:\prikopirovat01.tifsetlocalset file=”r:\hlavnifotka.tif”set maxbytesize=1073741824FOR %%A IN (r:\hlavnifotka.tif) DO SET FileSize=%%~zAIF %FileSize% GTR %maxbytesize% (goto konec) ELSE (goto A02):A02if exist c:\prikopirovat02.tif call davka01.exe c:\prikopirovat02.tifif exist c:\prikopirovat02.tif call davka02.exe r:\hlavnifotka.tifif exist c:\prikopirovat02.tif del c:\prikopirovat02.tifsetlocalset file=”r:\hlavnifotka.tif”set maxbytesize=1073741824FOR %%A IN (r:\hlavnifotka.tif) DO SET FileSize=%%~zAIF %FileSize% GTR %maxbytesize% (goto konec) ELSE (goto A03):A03if exist c:\prikopirovat03.tif call davka01.exe c:\prikopirovat03.tifif exist c:\prikopirovat03.tif call davka02.exe r:\hlavnifotka.tifif exist c:\prikopirovat03.tif del c:\prikopirovat03.tif:konecmove r:\hlavnifotka.tif vlepene_vrstvy\xxx del c:\prikopirovat*.tif

Odpovědi na otázku

avatar
 | Microsoft Windows 10 IE 11.0

Preteceni max. velikosti cisla v cmd.exeMP

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

jeste dukaz:>SET FileSize=3807252480>set /a FileSize=%filesize%-1Invalid number. Numbers are limited to 32-bits of precision.cmd.exe je stary a omezeny. Na spoustu veci staci. Na tuto ne :/MP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

??? 2 na 32 je něco přes 2000000000. S tím 1 GB to funguje

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

aha, testnul jsem na prvnim trosku vetsim souboru a padlo mi to, dal jsem neresilMP

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

bacha na zavorky u podmineneho prikazu, DURAZNE doporucuji if condition ( neco neco2) else (neco3neco4)taky ne?MP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 78.0.3904.97

Velice děkuji za rychlé odpovědi.Potřebuji to do práce jako dílčí část většího úkolu, mohu použít jen příkazový řádek.Jde mi o to, aby hlavnifotka.tif nepřesáhla 4 GB (to je maximální velikost, kterou photoshop uloží bez dotázání). Lépe ale, když nepřekročí 1 GB, pro rychlejší práci. Dávka poběží na tisících souborech, je lepší proto otevírat jen gigové soubory než čtyřgigové.Jaká je tedy maximální velikost, kterou ještě cmd.exe zvládne (jaké maximální číslo můžu doplnit do podmínky)?Vyzkouším to s tím 1GB, zatím jsem zkoušela jen 4GB.Děkuji.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

Největší je 2 na 32, tedy 2 G ještě projde.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 78.0.3904.97

Funguje to. Opravdu vytváří soubory jen něco málo přes 2 GB, zbytek přeskočí a jde na další soubor.Děkuji mnohokrát za rychlé odpovědi. Na Živě to opravdu žije :)

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

Doplnim, ze se jedna o signed integer, takze ne 2^32, ale 2^31 !!!MP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

Zkoušel jsem ten příklad s 2 000 000 000 a funguje ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

2^31=2147483648set a=2147483648set /a a=%a%+1resp jeste lepe (preteceni do minusu)set a=2147483647set /a a=%a%+1MP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

Teď mi to došlo: samo, že 2 na 31 ... tedy něco přes těch 2 000 000 000 (to bylo podstatné).

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 IE 11.0

jak jsem psal - SIGNED int :)MP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 70.0
 |   |  Microsoft Windows 10 Chrome 78.0.3904.97

Co si vzpomínám, měl jsem problémy v dávkových souborech s příkazy typu "goto konec" a podobně.Fungovaly mi jenom skoky na čísla, například "goto 10".

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

Nepleteš si to s Fortranem ???

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Goto, Překročení, Move


Určitě si přečtěte

Hledá se způsob, jak uložit elektřinu. Možná pomohou obří gravitační baterie

Hledá se způsob, jak uložit elektřinu. Možná pomohou obří gravitační baterie

** Jak uložit elektřinu z fotovoltaiky a větrných turbín ** Pomohou třeba staré autobaterie, nebo setrvačníky ** A pak tu jsou bizarní gravitační akumulátory velikosti mrakodrapu

Jakub Čížek | 254

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

** Mapy.cz neslouží jen k zobrazení podkladů a plánování tras ** Nabízejí celou řadu dalších praktických funkcí a možností ** Vybrali jsme třináct tipů a triků, o kterých možná nevíte

Karel Kilián | 36

Pozor, na Česko v těchto dnech útočí falešné Tesco, Penny Market a Lidl

Pozor, na Česko v těchto dnech útočí falešné Tesco, Penny Market a Lidl

** Máme tu další českou phishingovou vlnu ** Podle průzkumů máme stále problém s kybernetickou gramotností ** Nebezpečím jsou děti, které opouštějí rodiče

Jakub Čížek | 37

Vyzkoušeli jsme TP-Link Deco P9: zajistí doma Wi-Fi díky drátům ve zdi

Vyzkoušeli jsme TP-Link Deco P9: zajistí doma Wi-Fi díky drátům ve zdi

** Nová generace Mesh Wi-Fi s propojením přes elektrické rozvody ** Lepší parametry a nižší cena než u předchůdce ** Aplikace zatím podporuje jen základní nastavení bez rozšířených funkcí

Tomáš Holčík | 23



Aktuální číslo časopisu Computer

Test 9 bezdrátových reproduktorů

Jak ovládnout Instagram

Test levných 27" herních monitorů

Jak se zbavit nepotřebných věcí na internetu