Diakritika a pokročilé funkce v batchi

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

ONEbit hosting Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem. Vydávání, hosting a aktualizace umožňují jeho sponzoři.

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 312x (65 B)
Aplikace je včetně zdrojových kódů v jazyce Batch

 

 

Článek pro vás napsal michal
Avatar
Jak se ti líbí článek?
8 hlasů
Autor se věnuje
Aktivity (1)

 

 

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

Avatar
martin
Neregistrovaný
Avatar
martin:21.9.2013 20:58

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

 
Odpovědět 21.9.2013 20:58
Avatar
janjuracka861:10.10.2013 11:29

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:30.10.2013 2:09

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
Life's just a dream.
Avatar
PatošíkGerek:12.11.2013 14:41

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:3.4.2014 17:06

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:7.4.2014 13:51

diakritika stačí napsat chcp 1250

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

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:22.3.2015 20:22

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
Tomáš Pařízek:13.4.2016 9:19

Naopak

 
Odpovědět  -1 13.4.2016 9:19
Avatar
Odpovídá na janjuracka861
Tomáš Pařízek:8.5.2016 18:39

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.5.2016 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