Diakritika a pokročilé funkce v batchi

Ostatní jazyky Příkazový řádek a dávkové soubory Diakritika a pokročilé funkce v batchi

V tutoriálu vám ukážu jak docílit toho, aby se vám v Batchi zobrazovala diakritika (ěščřžýáíé atd...), takže vaše .bat soubory budou hezčí :)

Začneme tím, že otevřeme nabídku start a vybereme spustit. Napíšeme wordpad a klikneme na ok.

Spustí se nám textový editor trochu podobný notepadu, do kterého můžeme začít psát příkazy. Jako test napíšeme tento jednoduchý příkaz, aby nám příkazový řádek vypsal tyto znaky ěščřžýáíé

@echo off
echo ě š č ř ž ý á í é
pause
msg * ě š č ř ž ý á í é

A teď pozor jak tento dávkový soubor uložíme. Takže klikneme na soubor a uložit jako. Zvolíme si kam chceme, aby se náš dávkový soubor uložil a jako název napíšeme test diakritiky.bat. Ale to nejdůležitější je, že musíte do kolonky uložit jako typ zvolit formát MS-DOS

A poté můžeme dávkový soubor uložit na zvolené místo. Teď ho můžeme jít otestovat, otevřeme si složku kam jsme ho uložili a spustíme ho.

A už nám funguje diakritika :-) Ale některé speciální znaky nám nepůjdou, jako například tyto známé alt kódy

☺ ☻ ♥ ♦ ♣ ♠ • ◘ ○ ◙ ♂ ♀ ♪ ♫ ☼

Pokročilé funkce

Jako první si ukážeme jak využít ping. Ping je normálně využíván k otestování propojení s vaším počítačem a jiným nebo stránkou.

Můžete použít tyto parametry:

  • t -bude odesílat pakety až do stisknutí CTRL+C
  • l (velikost) -určuje velikost paketu v bajtech
  • i -TTL paket
  • n -délka odesílání paketů v sekundách

Nejprve si zkusíme, jestli jsme spojeni se strýčkem Googlem :) Takže to bude vypadat takto

@echo off
title zkouška spojení se strýčkem googlem
echo bude vykonán ping na adresu www.google.cz s velikostí paketu 500 bajtů
echo ukončíte ho stisknutím kláves CTRL+C a jak se vás to bude ptát jestli chcete ukončit echo dávkovou úlohu dejte ne nebo se vypne celý dávkový soubor
pause
ping www.google.cz -t -l 500
msg * hotovo :)
pause
exit

a uložíme s kódováním MS-DOS výsledek bude vypadat takto:

Tímto příkazem lze také odzkoušet spojení s IP adresou. Ale určitě vás nenapadá využití v dávkovém souboru. Tím využitím je náhrada příkazu

sleep (kolik sekund počkat)

, který nefunguje na všech operačních systémech. Uděláme to takto:

@echo off
title náhrada příkazu sleep
echo stiskněte enter a za 5 sekund se vám zobrazí zpráva
pause >nul
ping -n 5 localhost >nul
echo tato zpráva se vám zobrazila za 5 sekund
pause

Teď si to vysvětlíme, určitě jste si tam všimli, že za některých příkazech bylo >nul, to znamená, že se tam nezobrazí, že se ten příkaz vykonal. Je tam příkaz ping na localhost(aktuální počítač), který je parametrem -n vykonáván 5 sekund a parametr >nul to skryje a máme z toho náhradu příkazu sleep :)

Dalším příkazem co vám ukážu je příkaz, aby jste mohli udělat něco jako načítání v dávkovém souboru, aby to vypadalo, že je to nějaký složitý dávkový soubor a že se musí načítat :D To uděláme takto:

@echo off
title načítávání.......
stisknutím klávesy enter spustíte načítávání
pause >nul
echo načítávání
echo.
echo|set /p=prosím čekejte
for %%A in ( A B C D E F G H CH I J K L M N O P Q R S T U V W X Y Z ) do echo|set /p=.
echo načteno
pause

Zase si to vysvětlíme, jak to funguje :). Příkaz

echo|set /p=prosím čekejte

vypíše a přidá k proměnné text prosím čekejte a příkaz

for %%A in ( A B C D E F G H CH I J K L M N O P Q R S T U V W X Y Z ) do echo|set /p=.

Udělá to, že bude hledat písmeno A v abecedě a pokaždé jak prohledá jedno písmeno připíše k proměnné tečku a ukáže ji na tom samém řádku jako je text prosím čekejte :)

Tak a to by bylo vše co vám dnes ukážu :) Kdyby jste si s něčím nevěděli rady, tak napište :)


 

Stáhnout

Staženo 298x (65 B)
Aplikace je včetně zdrojových kódů v jazyce Batch

 

  Aktivity (1)

Článek pro vás napsal michal
Avatar
Autor se věnuje

Jak se ti líbí článek?
Celkem (8 hlasů) :
3.253.253.25 3.253.25


 



 

 

Komentáře
Zobrazit starší komentáře (9)

Avatar
martin
Neregistrovaný
Avatar
martin:

no jo ale autor to myslel bez instalace jiných programů :)

 
Odpovědět 21.9.2013 20:58
Avatar
janjuracka861:

Hele prosimtě mě tam ta diakritika dělá problémy
místo ní se tam zobrazují jakési znaky
zkoušel jsem to podle toho návodu uložit 3krát
takže tím to není
můj operační systém je Windows 7 Professional

 
Odpovědět 10.10.2013 11:29
Avatar
jindral
Redaktor
Avatar
jindral:

Ono pro správné zobrazení diakritiky stačí vzít PSPad a uložit bat dávku v kódování "Latin II" čili CP852 :)

Odpovědět 30.10.2013 2:09
129x pád = 219x úspěch
Avatar
PatošíkGerek:

To je dobré :) Mě to sice nejde mám vyspělejší OS komu to nejde na novějších Win tak si stáhněte PSPad použíté formát latina II a vytvořte si vlastní batch.
Uložený batch otévřete tak že si zase zvolíte Latina II a dáte otevřit a dole vyberete .cmd .nt .bat :) A máte otévřené s vaší uloženou diakritikou :)

Odpovědět 12.11.2013 14:41
Umím programovat v dávkových souborách a Game Maker
Avatar
KlimiCZ
Člen
Avatar
KlimiCZ:

Jo a s tím sleep dělá se to lepší takhle :
https://www.youtube.com/watch?…

Odpovědět 3.4.2014 17:06
Nesnaž se zakrýt něco, co jsi provedl úmyslně. Svět je tak malý, že dotyčný se to stejně dozví.
Avatar
Vojtěch Bargl:

diakritika stačí napsat chcp 1250

 
Odpovědět 7.4.2014 13:51
Avatar
Tomáš Brůna
Redaktor
Avatar
Tomáš Brůna:

Ahoj funguje diakritika i v příkazu msg? děkuju

Odpovědět 7.1.2015 16:48
Lepší být šprt než blbec :)
Avatar
Tomáš Brůna
Redaktor
Avatar
Tomáš Brůna:

A jde nějak změnit i velikost písma?

Odpovědět 22.3.2015 20:22
Lepší být šprt než blbec :)
Avatar
 
Odpovědět  -1 13. dubna 9:19
Avatar
Odpovídá na janjuracka861
Tomáš Pařízek:

Já jsem si to stáhnul a prozkoumal kód, představ si že on tam píše nějaké strašné znaky, a místo nich se ti zobrazí diakritika.

 
Odpovědět 8. května 18:39
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 19. Zobrazit vše