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 15:33 | Komunita

    Ve Firefoxu bude lepší správa profilů (oddělené nastavení domovské stránky, nastavení lišt, instalace rozšíření, uložení hesla, přidání záložky atd.). Nový grafický správce profilů bude postupně zaváděn od 14.října.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | Nová verze

    Canonical vydal (email) Ubuntu 25.10 Questing Quokka. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2026.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzi 1.5.0.

    Ladislav Hagara | Komentářů: 0
    dnes 01:22 | Nová verze

    Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Bezpečnostní upozornění

    V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).

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

    Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.

    Ladislav Hagara | Komentářů: 16
    včera 12:33 | Zajímavý software

    Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | IT novinky

    Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.

    Ladislav Hagara | Komentářů: 0
    7.10. 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    7.10. 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

    Ladislav Hagara | Komentářů: 4
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (17%)
     (15%)
     (15%)
    Celkem 201 hlasů
     Komentářů: 13, poslední včera 07:41
    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.