Dneska pro vás mám dvě scénky od Rowna Atkinsona. První je jeho přivítání v pekle (bohužel židé měli pravdu) a druhá je z Nazaretu. Pro ty co nekamarádí s angličtinou jsou videa opatřena českými titulky. Další scénky můžete najít na www.youtube.com když zadáte "rowan atkinson+cesky"
V minulém díle jsme se naučili vypsat text, používat proměnné a načítat parametry příkazové řádky. Dnes se podíváme na řídíci příkazy, základ programování a skriptování.
Příkaz if má několik syntaxí:
if errorlevel cislo prikaz - každý příkaz ve Windows skončí s číslem chyby (0 pokud k chybě nedošlo). Tímto můžeme na chyby reagovat
if neco1==neco2 prikaz - porovná dvě proměnné, řetězce, čísla atp.
if exist soubor prikaz - pokud soubor existuje, provede příkaz
Například porovnání promene1 a promene2 provedeme takto:
@echo off
set promena1=ahoj
set promena2=cau
if %promena1%==%promena2% echo rovnaji se
Často se nám může stát že budeme naopak potřebovat zjistit, zda jsou proměnné rozdílné:
@echo off
set promena1=ahoj
set promena2=cau
if %promena1%==%promena2% echo rovnaji se
if not %promena1%==%promena2% echo nerovnaji se
Syntaxi s not můžeme použít u všech "typů" if. Často také chceme v případě podmínky provést více příkazů:
@echo off
if not exist muj_soubor.txt echo soubor nenalezen
if exist muj_soubor.txt (
echo soubor existuje, mazu ho
del muj_soubor.txt
echo soubor smazan
)
Tento skript zjistí zda existuje muj_soubor.txt, pokud ano tak ho smaže a pokud ne tak vypíše chybu.
Dalším užitečným pomocníkem je cyklus for:
for %%promena in (hodnoty) do prikaz - provede příkaz pro všechny hodnoty v závorkách, např.:
for %%p in (2 5 6) do echo %%p
vypíše čísla 2 5 6. Daleko užitečnější je syntaxe for s přepínačem /L:
for /L %%p in (od,krok,do) do prikaz
například vypsání čísel od 1 do desíti dosáhneme takto:
@echo off
for /L %%p in (1,1,10) do echo %%p
Pro více příkazu můžeme opět použít závorky:
@echo off
for /L %%p in (0,2,20) do (
echo %%p
echo ---
)
Tento skript vypíše všechna sudá čísla menší nebo rovna 20 a oddělí je ---
For nám může posloužit také například na vypsání všech souborů typu MP3 v adresáři:
@echo off
for %%s in (*.mp3) do echo %%f
Komentáře jsou samozřejmě možné i ve skriptech, jejich syntaxe je jednoduchá:
@echo off
::Nastavíme poměnnou
set a=1;
::Prvni radek komentare
::Druhy radek komenatre
::Treti radek komentare
Pokud patříte mezi ty, kteří denně a bez problému lámou ochrany proti kopírování u optických medii, zbystřete pozornost. Nahrávacím společnostem došla trpělivost a přišly s opravdu radikálním nápadem. Okraje medií opatřily malými železnými ostny, které se při pokusu o kopírování uvolní a vlivem odstředivé síly vystřelí z mechaniky. Vzhledem k otáčkám jim neděla problém prorazit i pancéřované vojenské počítače, natož obyčejné domácí pc. Ochrana bez problému pokryje prostor o velikosti 15m a úhlu 360° v okolí mechaniky. Dvouvrstvá média dostala do vínku 2 řady ostnů a pokrývají tak vertikální úhel 60° (na rozdíl od 30° u jednovrstvých). Nedělají jim problémy sádrokartonové zdi, dřevěné stoly, ani domácí mazlíčci. Jediné, s čím si ostny neporadí, je obal originálních Windows Vista a díky reverznímu inženýrství také manuál k Ubuntu Linux. Společnost Warner Bross potvrdila nasazení této ochrany v Indii. Odtamtud také přicházejí první zprávy o těžkých zraněních a dokonce o 10 úmrtí v důsledku snahy mediu zkopírovat. O dalším vývoji této kauzy budeme informovat:-)