read (Unix)

read je základním programem/příkazem v bash, který přečte řádek ze standardního vstupu (nebo ze souboru), rozdělí textový řetězec na části a ty přiřadí do definovaných proměnných.[1] Jako standardní vstup se často využívá přímé zadávání textu z klávesnice.

Popis

read [options] [name ...]

[name ...] definuje jeden nebo více názvů proměnných oddělených mezerou, do kterých je uložen text ze standardního vstupu. Jestliže je definována více než jedna proměnná, je textový řetězec rozdělen na stejný počet částí. V základním nastavení jako oddělovač fungují znaky patřící mezi IFS (Input Field Separator), tj. mezera, tabulátor a nový řádek. Bude-li na vstupu zadáno více slov než je počet proměnných, dosadí se do poslední z nich všechna zbývající slova včetně oddělovačů. Je-li naopak v řádku slov méně, jsou zbývající proměnné naplněny prázdným řetězcem (nulový znak).[2] Když není zadán žádný parametr [name] použije se jako výchozí proměnná REPLY. [3] Příkaz je opakem k příkazům echo a printf [4].

Příklady použití

Jednoduchým příkladem použití programu read, může být zadání proměnných var1 a var2, kdy po potvrzení je uživatelem zadán vstup: "Hello, world!".

read var1 var2
Hello, World!

Každé slovo je předáno programu read jako argument, který může být ověřen příkazem echo nebo printf.[2]

echo $var1
Hello,
echo $var2
World!

Čtení ze souboru

Čtení ze souboru pomocí příkazu read je možné tehdy, když se soubor přesměruje na standardní vstup.

read x y < soubor.txt

Pokud chceme přečíst všechny řádky souboru je nutné vytvořit while cyklus[5].

while IFS=: read x _ y _; do
    printf "%s -- %s\n" "$x" "$y"
done < /etc/passwd

Přepínače

read -r

Slouží k nastavení znaku "\" (zpětné lomítko), které je normálně považováno za escapující znak. S příkazem read je to bráno pouze jako znak "\".[6]

read -n x

nečte řádek, ale jen x znaků. Využívá se to pro zadávání hodnot přesné délky nebo počet stisků klávesy (read -r 1).

read -s

zadávané znaky nebudou zobrazovány. Využívá se to při zadávání hesel nebo důvěrných údajů.

read -t sekundy

příkaz čeká na vstup z klávesnice jen stanovený počet sekund.[1]

Reference

  1. a b Bash 14: Interaktivní skripty: read - Linux E X P R E S. www.linuxexpres.cz [online]. [cit. 2022-07-19]. Dostupné online. 
  2. a b Bash read Command. linuxize.com [online]. 2020-12-29 [cit. 2022-07-18]. Dostupné online. (anglicky) 
  3. read Command. www.ibm.com [online]. [cit. 2022-07-18]. Dostupné online. (anglicky) 
  4. Bash Guide for Beginners. tldp.org [online]. [cit. 2022-07-18]. Dostupné online. 
  5. Honza „Stínovlas“ Musílek. kam.mff.cuni.cz [online]. [cit. 2022-07-19]. Dostupné v archivu pořízeném z originálu dne 2021-01-15. 
  6. Unixové nástroje – 15 (basename/dirname, test, read). www.abclinuxu.cz [online]. [cit. 2022-07-19]. Dostupné online. 

Související články

Externí odkazy


Zdroj datcs.wikipedia.org
Originálcs.wikipedia.org/wiki/Read_(Unix)
Zobrazit sloupec 

Kalkulačka - Výpočet

Výpočet čisté mzdy

Důchodová kalkulačka

Přídavky na dítě

Příspěvek na bydlení

Rodičovský příspěvek

Životní minimum

Hypoteční kalkulačka

Povinné ručení

Banky a Bankomaty

Úrokové sazby, Hypotéky

Směnárny - Euro, Dolar

Práce - Volná místa

Úřad práce, Mzda, Platy

Dávky a příspěvky

Nemocenská, Porodné

Podpora v nezaměstnanosti

Důchody

Investice

Burza - ČEZ

Dluhopisy, Podílové fondy

Ekonomika - HDP, Mzdy

Kryptoměny - Bitcoin, Ethereum

Drahé kovy

Zlato, Investiční zlato, Stříbro

Ropa - PHM, Benzín, Nafta, Nafta v Evropě

Podnikání

Města a obce, PSČ

Katastr nemovitostí

Katastrální úřady

Ochranné známky

Občanský zákoník

Zákoník práce

Stavební zákon

Daně, formuláře

Další odkazy

Auto - Cena, Spolehlivost

Registr vozidel - Technický průkaz, eTechničák

Finanční katalog

Volby, Mapa webu

English version

Czech currency

Prague stock exchange


Ochrana dat, Cookies

 

Copyright © 2000 - 2024

Kurzy.cz, spol. s r.o., AliaWeb, spol. s r.o.