1.díl - Základy práce se soubory a složkami v Batch-i
V dnešním tutoriálu si ukážeme základy práce se soubory a složkami vytvoříme si pár testovacích programů.
Nejprve si popíšeme pár příkazů:
Soubory
Find => Find text cesta+soubor - Vyhledá zadaný text v zadaném souboru
Copy => Copy zdrojová cesta, cílová cesta - zkopíruje jeden nebo více souborů
Del => Del cesta - vymaže jeden nebo více souborů
Move => Move zdrojová cesta, cílová cesta - přemístí jeden nebo více souborů
Ren => Ren cesta nový název - přejmenuje soubor
Složky
Dir => Dir cesta - Zobrazí informace o složce, kde je zadaná složka, jak se jmenuje daná složka, jaké má sériové číslo, datumy a časy vytvoření, o jaký typ souboru, který se ve složce nachází, se jedná (např. soubor.txt nebo soubor.jar nebo dir tedy složka), jakou má velikost, kolik je na jednotce volného místa, kolik tam je souborů a kolik složek a jiné.
Copy => Copy zdrojová cesta, cílová cesta - zkopíruje jeden nebo více obsahů složek
Del => Del cesta - vymaže jeden nebo více obsahů složek
Move => Move zdrojová cesta, cílová cesta - přemístí jeden nebo více obsahů složek
Ren => Ren cesta nový název - přejmenuje složku
To by na začátek stačilo ... A teď si pojďme vytvořit program, který by nám měnil konfigurační soubor pro nějakou hru.
Náš algoritmus bude vypadat nějak takhle:
___________________________ |Zadání požadované verze | |__________________________| || || VV __________________________________ |Vymazání souboru aktuální verze | |_________________________________| || || VV _______________________________________ |Zkopírování souboru požadované verze | |______________________________________| || || VV _______________________________________ |Přejmenování souboru požadované verze | |______________________________________|
Pomocí našich schopností, bychom to měli zvládnout v pohodě. Začneme běžně a budeme pokračovat podle našeho algoritmu.
GameGM je nějaká hra.
Konfigurační soubor se jmenuje gamegm.txt
@echo off title Menic verze pro GameGM :otazka set /p A=Zadejte pozadovanou verzi GameGM [1.0/1.1/1.2/1.3/1.4] : if %A%==1.0 goto 10 if %A%==1.1 goto 11 if %A%==1.2 goto 12 if %A%==1.3 goto 13 if %A%==1.4 goto 14 echo Nesprávně zadaná verze ! goto otazka :10 del "C:\Users\User\Desktop\GameGM\gamegm.txt" copy "C:\Users\User\Desktop\GameGM\Verzie\gamegm_1_0.txt" "C:\Users\User\Desktop\GameGM\" ren "C:\Users\User\Desktop\GameGM\gamegm_1_0.txt" "gamegm.txt" goto end :11 del "C:\Users\User\Desktop\GameGM\gamegm.txt" copy "C:\Users\User\Desktop\GameGM\Verzie\gamegm_1_1.txt" "C:\Users\User\Desktop\GameGM\" ren "C:\Users\User\Desktop\GameGM\gamegm_1_1.txt" "gamegm.txt" goto end :12 del "C:\Users\User\Desktop\GameGM\gamegm.txt" copy "C:\Users\User\Desktop\GameGM\Verzie\gamegm_1_2.txt" "C:\Users\User\Desktop\GameGM\" ren "C:\Users\User\Desktop\GameGM\gamegm_1_2.txt" "gamegm.txt" goto end :13 del "C:\Users\User\Desktop\GameGM\gamegm.txt" copy "C:\Users\User\Desktop\GameGM\Verzie\gamegm_1_3.txt" "C:\Users\User\Desktop\GameGM\" ren "C:\Users\User\Desktop\GameGM\gamegm_1_3.txt" "gamegm.txt" goto end :14 del "C:\Users\User\Desktop\GameGM\gamegm.txt" copy "C:\Users\User\Desktop\GameGM\Verzie\gamegm_1_4.txt" "C:\Users\User\Desktop\GameGM\" ren "C:\Users\User\Desktop\GameGM\gamegm_1_4.txt" "gamegm.txt" goto end :end echo Děkuji za použití ! pause exit
A výsledek bude vypadat nějak takto:

Samozřejmě si to můžete upravit pro jiné hry, např. pro Minecraft. Pro ten by to vypadalo přibližně nějak takto:
@echo off title Menic verze pro Minecraft :otazka set /p A=Zadejte pozadovanou verzi Minecraftu [1.0/1.1/1.2/1.3/1.4/1.5] : if %A%==1.0 goto 10 if %A%==1.1 goto 11 if %A%==1.2 goto 12 if %A%==1.3 goto 13 if %A%==1.4 goto 14 echo Nespravne zadana verze ! goto otazka :10 del %appdata%\.minecraft\bin\minecraft.jar" copy %appdata%\.minecraft\bin\minecraft_1_0.jar" %appdata%\.minecraft\bin\" ren %appdata%\.minecraft\bin\minecraft_1_0.jar" "minecraft.jar" goto end :11 del %appdata%\.minecraft\bin\minecraft.jar" copy %appdata%\.minecraft\bin\minecraft_1_1.jar" %appdata%\.minecraft\bin\" ren %appdata%\.minecraft\bin\minecraft_1_1.jar" "minecraft.jar" goto end :12 del %appdata%\.minecraft\bin\minecraft.jar" copy %appdata%\.minecraft\bin\minecraft_1_2.jar" %appdata%\.minecraft\bin\" ren %appdata%\.minecraft\bin\minecraft_1_2.jar" "minecraft.jar" goto end :13 del %appdata%\.minecraft\bin\minecraft.jar" copy %appdata%\.minecraft\bin\minecraft_1_3.jar" %appdata%\.minecraft\bin\" ren %appdata%\.minecraft\bin\minecraft_1_3.jar" "minecraft.jar" goto end :14 del %appdata%\.minecraft\bin\minecraft.jar" copy %appdata%\.minecraft\bin\minecraft_1_4.jar" %appdata%\.minecraft\bin\" ren %appdata%\.minecraft\bin\minecraft_1_4.jar" "minecraft.jar" goto end :end echo Děkuji za použití ! pause exit
Pomocí tohoto se dá udělat celkem dobrý měnič verzí her, které fungují na tomto principu.
To by bylo na dnes všechno.
Příště si ukážeme jak rozbalit RAR soubor a jak spustit JAR pomocí Batch-e.
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 376x (1.4 kB)
Aplikace je včetně zdrojových kódů v jazyce Batch