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í
×
    včera 18:44 | IT novinky

    Společnost Murena ve spolupráci se společností Qwant představila vyhledávač Murena Find. Ve výchozím nastavení bude používán v mobilním operačním systému /e/OS a v Murena Workspace.

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

    V mobilní aplikaci Facebooku se lze nově přihlašovat pomocí Passkeys.

    Ladislav Hagara | Komentářů: 3
    včera 12:44 | IT novinky

    Společnost Midjourney představila vlastní generátor videí pomocí umělé inteligence (AI) V1 Video Model.

    Ladislav Hagara | Komentářů: 0
    18.6. 23:22 | Nová verze

    Editor kódu Zed (Wikipedie) má nově v sobě integrovaný debugger. Podporuje Rust, C/C++, JavaScript, Go, Python a pomocí rozšíření i další programovací jazyky.

    Ladislav Hagara | Komentářů: 6
    18.6. 22:22 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované GIFy.

    Ladislav Hagara | Komentářů: 1
    18.6. 21:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.18 a Xwayland 24.1.8 řeší další bezpečnostní chybu.

    Ladislav Hagara | Komentářů: 0
    18.6. 17:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 210. sraz, který proběhne 20. června od 18:00 v Red Hat Labu na Fakultě informatiky Masarykovy univerzity na adrese Botanická 68A nebo také online.

    Ladislav Hagara | Komentářů: 0
    18.6. 14:33 | Nová verze

    Byla vydána nová verze 17 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    18.6. 12:00 | Nová verze

    Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 25.05.0. Přehled novinek v poznámkách k vydání. Nově je implementováno standardizované simulační rozhraní ROS (Robot Operating System) 2.

    Ladislav Hagara | Komentářů: 0
    17.6. 22:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.17 a Xwayland 24.1.7 řeší 6 bezpečnostních chyb: CVE-2025-49175, CVE-2025-49176, CVE-2025-49177, CVE-2025-49178, CVE-2025-49179 a CVE-2025-49180. Nils Emmerich je nalezl koncem března a dnes publikoval detaily.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (56%)
     (30%)
     (7%)
     (2%)
     (0%)
     (1%)
     (4%)
    Celkem 284 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: echo a proměnná

    7.6.2020 22:03 tomas711
    echo a proměnná
    Přečteno: 348×
    Ahoj, poradí mi prosím někdo jak ve scriptu použít příkaz echo, tak aby mi fungovala proměnná a zároveň se mi nesmazaly uvozovky v textu?

    1, Když zadám text jako: echo "text" tak mi smaže uvozovky v textu, které tam potřebuji zachovat. Když zadám před uvozovky v textu /" tak uvozovky zůstanou, ale nenačte se proměnná.

    2, Když zadám text jako: echo '' tak mi ponechá uvozovky v textu, ale nenačte se proměnná.

    Příklad:

    echo 'zone "$domena" {

    type master;

    file "$domena.zone";

    };'>> named.conf

    Nenapadá Vás prosím, jak správně napsat příkaz, tak aby byly zachované uvozovky v textu a zároveň se načetla proměnná?

    Děkuji

    Řešení dotazu:


    Odpovědi

    Josef Kufner avatar 7.6.2020 22:36 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: echo a proměnná
    echo 'zone "'"$domena"'" {
      type master;
      file "'"$domena.zone"'";
    };'>> named.conf
    Hello world ! Segmentation fault (core dumped)
    7.6.2020 22:39 billgates | skóre: 27
    Rozbalit Rozbalit vše Re: echo a proměnná
    Treba pouzit opacne lomitka:
    #!/bin/bash
    
    domena="abcwindowsu.cz"
    
    echo "zone \"${domena}\" {
    type master;
    file \"${domena}.zone\";
    };"
    
    7.6.2020 22:41 GeorgeWH | skóre: 42
    Rozbalit Rozbalit vše Re: echo a proměnná
    $ cat << EOF >> named.conf
    zone "$domena" {
        type master;
        file "$domena.zone";
    };
    EOF
    
    8.6.2020 21:34 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: echo a proměnná
    Ak to urobiť, to už tu odznelo. Ja poviem, prečo je to tak:
    • o spracovanie úvodzoviek sa stará shell - viď časť Quoting
    • pokiaľ špeciálny význam úvodzoviek/apostrofov nie je niečím potlačený, shell ich odstraňuje
    • potlačenie špeciálneho významu úvodzoviek sa dá dosiahnuť uzavretím do apostrofov
    • potlačenie špeciálneho významu apostrofov sa dá dosiahnuť uzavretím do úvodzoviek
    • premenné sa nenahrádzajú pokiaľ sú uzavreté do apostrofov (ktorých špeciálny význam nebol potlačený)
    • premenné neuzavreté do apostrofov sa nahrádzajú
    príklady
    • echo "tieto uvodzovky sa nevytlačia"
    • echo 'tieto apostrofy sa nevytilačia'
    • echo 'táto uvodzovka " sa vytlačí'
    • echo "tento apostrof ' sa vytlačí"
    • echo "obsah tejto $premennej sa vytlačí"
    • echo 'obsah tejto $premennej sa nevytlačí'
    • echo "dá sa to vše""lij"ako 'kombi'novať a použiť '"' alebo "'" podľa potreby
    No a ešte sa dá do toho zamiešať spätné lomítko, ktoré môže potláčať význam úvodzovka, apostrof alebo spätné lomítko, ale o tom niekedy inokedy.
    9.6.2020 13:11 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: echo a proměnná
    echo "zone \"${domena}\" {
    	type master;
    	file \"${domena}.zone\";
    };"
    
    echo 'zone "'"$domena"'" {
    	type master;
    	file "'"$domena"'.zone";
    };'
    
    cat <<-HOVNO
    zone "${domena}" {
    	type master;
    	file "${domena}.zone";
    };
    HOVNO
    
    9.6.2020 13:35 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: echo a proměnná
    Heredoc mám rád, odpadá s ním hromada eskejpování.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    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.