abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:11 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.5. Přehled novinek s náhledy v oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | IT novinky

    Německo zvažuje, že zaplatí místním telekomunikačním operátorům včetně Deutsche Telekom, aby nahradili zařízení od čínské firmy Huawei. Náklady na výměnu by mohly přesáhnout dvě miliardy eur (bezmála 49 miliard Kč). Jeden scénář počítá s tím, že vláda na tento záměr použije prostředky určené na obranu či infrastrukturu.

    Ladislav Hagara | Komentářů: 0
    včera 18:00 | Komunita

    Po dvaceti letech skončil leader japonské SUMO (SUpport.MOzilla.org) komunity Marsf. Důvodem bylo nasazení sumobota, který nedodržuje nastavené postupy a hrubě zasahuje do překladů i archivů. Marsf zároveň zakázal použití svých příspěvků a dat k učení sumobota a AI a požádal o vyřazení svých dat ze všech učebních dat.

    karkar | Komentářů: 1
    včera 11:00 | IT novinky

    Úřad pro ochranu hospodářské soutěže zahajuje sektorové šetření v oblasti mobilních telekomunikačních služeb poskytovaných domácnostem v České republice. Z poznatků získaných na základě prvotní analýzy provedené ve spolupráci s Českým telekomunikačním úřadem (ČTÚ) ÚOHS zjistil, že vzájemné vztahy mezi operátory je zapotřebí detailněji prověřit kvůli možné nefunkčnosti některých aspektů konkurence na trzích, na nichž roste tržní podíl klíčových hráčů a naopak klesá význam nezávislých virtuálních operátorů.

    Ladislav Hagara | Komentářů: 9
    včera 10:55 | Humor

    Různé audity bezpečnostních systémů pařížského muzea Louvre odhalily závažné problémy v oblasti kybernetické bezpečnosti a tyto problémy přetrvávaly déle než deset let. Jeden z těchto auditů, který v roce 2014 provedla francouzská národní agentura pro kybernetickou bezpečnost, například ukázal, že heslo do kamerového systému muzea bylo „Louvre“. 😀

    Ladislav Hagara | Komentářů: 12
    včera 01:00 | Komunita

    Z upstreamu GNOME Mutter byl zcela odstraněn backend X11. GNOME 50 tedy poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.

    Ladislav Hagara | Komentářů: 13
    včera 00:00 | IT novinky

    Byl publikován plán na odstranění XSLT z webových prohlížečů Chrome a Chromium. S odstraněním XSLT souhlasí také vývojáři Firefoxu a WebKit. Důvodem jsou bezpečnostní rizika a klesající využití v moderním webovém vývoji.

    Ladislav Hagara | Komentářů: 1
    5.11. 15:55 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.3.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    5.11. 05:55 | IT novinky

    Organizace Open Container Initiative (OCI) (Wikipedie), projekt nadace Linux Foundation, vydala Runtime Specification 1.3 (pdf), tj. novou verzi specifikace kontejnerového běhového prostředí. Hlavní novinkou je podpora FreeBSD.

    Ladislav Hagara | Komentářů: 0
    4.11. 11:33 | IT novinky

    Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.

    Ladislav Hagara | Komentářů: 22
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (48%)
     (18%)
     (17%)
     (22%)
     (15%)
     (21%)
     (16%)
     (16%)
    Celkem 320 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: Rozdíl mezi shel a bash

    26.10.2017 14:58 Martina
    Rozdíl mezi shel a bash
    Přečteno: 875×
    Ahoj, může mi někdo poradit jaký je rozdíl mezi programováním v shelu a v bashi? Hledám nějake informace v češtině pro začátečníky ale nic moc jsem nenašla. Děkuji M.

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Vladimír Čunát)
    26.10.2017 15:09 NN
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Shell = prikazovy interpret, konzole. Bash - Bourne Again Shell, je jeden z mnoha "shellu", jako napriklad sh,zsh,ksh..
    26.10.2017 21:27 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash

    konzole != shell

    Josef Kufner avatar 27.10.2017 23:13 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Jen pro doplnění: Shelly (včetně Bashe) jsou orientovány hlavně na interaktivní použití z příkazové řádky. Na programování se moc nehodí. Něco menšího se dá, ale cokoliv většího je utrpení.

    Pokud s programováním začínáš, sáhni radši po Pythonu a k Bashi se vrať potom. Pokud máš dobrý důvod i přes to se pustit do bashe, tak viz https://www.root.cz/clanky/programovani-v-bash-shellu/.
    Hello world ! Segmentation fault (core dumped)
    k3dAR avatar 28.10.2017 02:55 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    pokud jde o "programovani" ve stylu zautomatizovani, nebo vyuziti GNU a jinych dostupnych nastroju, je BASH naprosto v pohode i pro vetsi "projekty" ;)
    porad nemam telo, ale uz mam hlavu... nobody
    Řešení 1× (Vladimír Čunát)
    26.10.2017 15:09 štefan
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Ahoj, shell je obecný název pro program umožňující zadávat příkazy interaktivně nebo v dávkách (souborrech), kdežto bash je konkrétní implementace tohoto principu.

    Rozdíli můžou být:
    • žádné
    • obrovské
    • něco mezi tím
    U mnoha linuxů je shell synonymem (zkratkou) pro právě bash.

    Jako orientační základ dobře poslouží tento článek na rootu: https://www.root.cz/clanky/programovani-v-bash-shellu/

    Jinak manuálové stránky bash (angličtina): https://www.gnu.org/software/bash/manual/bashref.html

    Při nainstalovaném linuxu je k dispozici příkaz
    man bash
    , který v závislosti na instalaci a distribuci by případně mohl býti i v češtině.
    26.10.2017 21:26 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash

    Bash je jednou z mnoha implementací shellu definovaného standardem, která ale přidává obrovskou spoustu funkcí navíc. Rozdíl je tedy ten, že v Bashi se dá spousta věcí napsat úsporněji a jednodušeji než ve standardním shellu. Pravděpodobně nejblíž implementaci původního standardu je Dash.

    Ještě před několika lety se mělo všeobecně za to, že skripty v distribucích by se měly omezovat pouze na standardizovaný shell bez rozšíření typu Bash, aby příznivci a odpůrci Bashe mohli mírumilovně koexistovat. Poslední dobou se ale takové orthodoxní postoje příliš nevidí a spousta skriptů přímo závisí na Bashi.

    Bash má například pole, která výrazně usnadňují některé situace, a k tomu obrovskou spoustu expanzí proměnných, které standardní shell nepodporuje:

    soubory=('první' 'druhý' 'třetí')              
    echo "${soubory[@]/%/.přípona}"
    

    Dash něco podobného dokáže (zdánlivě) taky, ale problém nastane, pokud například některé jméno souboru bude obsahovat mezeru. Bez mezer (a s totožným výstupem) to půjde třeba takto.

    soubory='první druhý třetí'
    echo $(for soubor in $soubory; do echo "${soubor}.přípona"; done;)
    

    Další zajímavost Bashe je (kromě polí) taky aritmetika a datové typy. Proměnné deklarované jako integer podporují jednoduché přiřazení a použití ve výrazech. Bohužel Bash podporuje jen bezznaménková celá čísla, ale něco se v něm tu a tam spočítat dá. To následující je funkce, která vyhodnocuje polynomy:

    # Příklad: 4x^2 + 2x + 3 [x = 7]: polynomial 4 2 3 7
    polynomial() {
      local -ar args=("$@")
      local -air coefficients=("${args[@]:0:${#args[@]} - 1}")
      local -ir variable="${args[-1]}"
      local -i value=0
      local -i power=1
      for ((index = 1; index <= ${#coefficients[@]}; ++index)); do
        value+='power * coefficients[-index]'
        ((power *= variable))
      done
      echo "$value"
    }
    

    A tady je 53 + 2×52 + 3×5 + 4:

    $ polynomial 1 2 3 4 5
    194
    

    Tohle^^^ by Dash dokázal jistě taky, v potu tváře a za použití expr, ale asi bych to v něm nechtěl kódit. Bash je tedy trochu univerzálnější než standardní shell; dokáže zastat několik málo běžných funkcí, kvůli kterým by bylo jinak potřebné sáhnout k perlu, sedu nebo awk.

    27.10.2017 14:35 jiwopene@gmail.com
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Mám pár poznámek:

    Shell není až tak často používaný jako programovací jazyk nebo se udělá nějaký "program" (napíše příkaz), který je použit jednou, neukládá se a jde nám pouze o výsledek (vyhledání souboru, ...).

    Jestli jste začátečník, doporučuji si pročíst Linux v Příkazech (doufám, že to smím napsat. ;-) ).

    Program v bashi může být docela krátký, ale přitom složitý. Velkou výhodou jsou roury:
    nmap -n -iR 100 -T5 -p 80 -oG -|grep open|tr -d 'Host:( '|cut -d ')' -f 1
    Data z nmap se neobjeví na obrazovce, ale půjdou na vstup programu grep, pak tr a výstupem bude výstup cut.

    Téměř pokaždé, když někdo píše shell, myslí bash či něco kompatibilního.
    27.10.2017 16:29 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Sice binárních programu v /usr/bin je více, ale přesto ze systému mi v něm sídle skoro skriptů pro bash.
    27.10.2017 22:10 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Nejen roury, ale i víceprocesové zpracování dat se v shellu dělá velmi snadno a jede to i svižně. Pokud se však někdo pokouší v shellu programovat podobně jako třeba v C, obvykle spláče nad výkonem. Pole by se v shellu vůbec nemělo používat, jsou s ním jen patálie.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    27.10.2017 16:49 Kit
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Velmi často se stává, že někdo do skriptu napíše příkazy pro Bash, do záhlaví uvede #!/bin/sh a pak se diví, že mu to nefunguje.
    27.10.2017 17:53 jiwopene | skóre: 31 | blog: Od každého trochu…
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Nebo má symlink /bin/sh na /bin/bash a pošle to někomu, kdo v /bin/sh má něco jiného než bash.
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky.
    27.10.2017 18:56 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    To je ešte relatívne v poriadku. Horšie je keď niekto do tvojho skriptu pre posixový shell "dorobí" kusy kódu v bash-i a keď sa vrátiš z dovolenky tak ideš na koberček ty namiesto neho. Samozrejme že o tej zmene nevieš, len to proste prestalo fungovať.
    27.10.2017 21:59 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    To je přece snadno dohledatelné v repozitáři, kdo kdy kterou změnu udělal.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.10.2017 08:49 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Už vidím nikoho čo používa repozitár na lokálne záležitosti čo automatizujú drobnú rutinu. Problém je v tom, že vedúceho obvykle nezaujíma kto to bol. Vedúceho obvykle zaujíma že to nefungovalo, on sa rozčuľoval, musel nahučať na autora nech to dá do poriadku a začalo to fungovať. Dôvod, prečo to prestalo fungovať žiadneho vedúceho nezaujíma.
    28.10.2017 12:18 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    U nás je to standard. Na produkci nesmí být nic, co by současně nebylo v repozitáři. Když něco nefunguje, tak revert je první akcí, která se provádí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    27.10.2017 22:02 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Když uděláš symlink /bin/sh na /bin/bash, mělo by se to chovat jako posixový shell. Bash totiž kontroluje, pod jakým jménem byl spuštěn a podle toho mění své chování.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.10.2017 08:58 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Rozdíl mezi shel a bash
    Nie vždy to sedí tak ako by malo. Ale to je nad rámec otázky.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.