Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem CMD dávka s "if" ("not")

Nazdar,
snažím se vytvořit dávku do batového souboru, která by mi překopírovala data z externích disků (flashek a pokud možno i externích HDD) na moji flashku. To by samo o sobě bylo triviální, ale já potřebuji nějakým způsobem rozlišit co má kopírovat a co ne. Mám hned dva problémy:

1.) Vím jak rozlišit kopírování podle typů souborů, ale rád bych to rozlišil i podle velikosti. Pravděpodobně na to bude něco s podmínkami "if" (př."not"), ale v těch se orientuji je na základní úrovni. Potřebuji tedy následující příkaz:

@xcopy "g:*.pptx" "COPY_G\*.*"
rozlišit tak, aby se nekopíroval soubor větší jak např. 5MB. Ale nevím, jak to udělat. Resp. ve svých pokusech jsem neuspěl.
2.) Pak mám druhý problém. Když vytvořím dávku:
@echo off
@xcopy "g:*.txt" "COPY_G\*.*"
@xcopy "h:*.doc" "COPY_H\*.*"
@xcopy "e:*.docx" "COPY_E\*.*"
pause
tak budu samozřejmě kopírovat data z umístění g (txtčka),h (MS Office W03),e (MS Office W7+), ale já chci kopírovat data pouze z flashek. Nechci čekat, než dávka "projede" i jednotky počítače, na kterém ji použiji. Zkoušel jsem to omezit přes "diskpart" ,ale samozřejmě bezvýsledně. Navíc "diskpart" vyžaduje administrátorská práva a já bych svoji dávku používal i na jiném pc, než mém. Takže mne napadlo opět vnořit funkce "if" a omezit to tentokrát podle velikosti jednotky. Aby příkaz jednoduše přeskočil jednotku větší, než 16(32)GB. Bude to sice omezeno vzhledem k externím HDD, ale na to si pak napíšu dávku samostatně.
Bohužel opět narážím na chabou znalost podmínek v cmd.
Takže si od Vás vzdělanějších slibuji nejen to, že mi pomůžete s vytvořením této dávky, ale i mi vnesete trochu světla do podmínek "if".
Děkuji

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny