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 10:55 | Pozvánky

    Organizátoři konference LinuxDays ukončili veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata, která na letošní konferenci zaznějí. Hlasovat můžete do neděle 7. září. Poté podle výsledků hlasování organizátoři sestaví program pro letošní ročník. Konference proběhne 4. a 5. října v Praze.

    Petr Krčmář | Komentářů: 4
    dnes 02:22 | Nová verze

    Byla vydána verze 11.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

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

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. Vypíchnout lze, že v Plasmě byl implementován 22letý požadavek. Historie schránky nově umožňuje ohvězdičkovat vybrané položky a mít k ním trvalý a snadný přístup.

    Ladislav Hagara | Komentářů: 0
    30.8. 20:00 | Nová verze

    Wayfire, kompozitní správce oken běžící nad Waylandem a využívající wlroots, byl vydán ve verzi 0.10.0. Zdrojové kódy jsou k dispozici na GitHubu. Videoukázky na YouTube.

    Ladislav Hagara | Komentářů: 0
    30.8. 04:00 | Komunita

    Před necelými čtyřmi měsíci byl Steven Deobald jmenován novým výkonným ředitelem GNOME Foundation. Včera skončil, protože "nebyl pro tuto roli v tento čas ten pravý".

    Ladislav Hagara | Komentářů: 7
    29.8. 18:33 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 156 (pdf).

    Ladislav Hagara | Komentářů: 1
    29.8. 15:11 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.8.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    29.8. 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    28.8. 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    28.8. 21:55 | Nová verze Ladislav Hagara | Komentářů: 4
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (81%)
     (8%)
     (2%)
     (3%)
     (4%)
     (1%)
    Celkem 124 hlasů
     Komentářů: 9, poslední 28.8. 11:53
    Rozcestník

    Dotaz: BASH a výsledek proměnné (příkazu) jako parametr

    Petr Maleček avatar 15.2.2024 23:38 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    BASH a výsledek proměnné (příkazu) jako parametr
    Přečteno: 431×
    Ahoj,

    vím, že budu za troubu a pravděpodobně už se někdo na něco podobného/stejného ptal, ale asi blbě hledám, už jsem docela vyčerpaný :-D
    
    #!/bin/bash
    ... nějaký kód
    
    # nastaveni LAN
    eth_dev=`ls /sys/class/net/ | grep enp0`
    `cat > /etc/netplan/01-config.yaml <<'_EOF'
    ---
    network:
      ethernets:
        $eth_dev:
          optional: true
          dhcp4: false
            addresses:
              - 192.168.0.10/24
      version: 2
    _EOF`
    
    # nastaveni WiFI
    wifi_dev=`ls /sys/class/net/ | grep w`
    `cat >> /etc/netplan/01-config.yaml <<'_EOF'
    
      wifis:
        $wifi_dev:
          optional: true
          access-points:
            "nejaka-wifi":
              password: "heslo-k-nejake-wifi"
          dhcp4: true
    _EOF`
    
    
    Když si proměnnou eth_dev či wifi_dev vypíšu přes echo, zobrazí se správně výsledek (celý název eth rozhraní). Ale když spustím tento kód, tak se vygeneruje yaml config, ve kterém název rozhraní není nahrazený výsledkem proměnné.

    Co dělám špatně?

    Díky.
    LinMuck, WinFuck :-P

    Řešení dotazu:


    Odpovědi

    16.2.2024 00:03 Want
    Rozbalit Rozbalit vše Re: BASH a výsledek proměnné (příkazu) jako parametr
    No jestli dobře vidím, voláš ten cat jako podproces. Nepoužívej apostrofy, protože v tom máš evidentně hokej, ale dolar, levá kulatá závorka - to co chceš spustit - pravá kulatá závorka. Budeš to mít přehlednější a ten cat se jako podproces nevolá.
    Petr Maleček avatar 16.2.2024 00:09 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH a výsledek proměnné (příkazu) jako parametr
    Díky za tip, ale i variantu bez uvozovek s použitím dolaru jsem zkoušel, zkoušel jsem i nevolat cat jako podproces, vůbec žádný rozdíl :-(

    # nastaveni LAN
    eth_dev=$(ls /sys/class/net/ | grep enp0)
    cat > /etc/netplan/01-config.yaml <<'_EOF'
    ---
    network:
      ethernets:
        $eth_dev:
          optional: true
          dhcp4: false
            addresses:
              - 192.168.0.10/24
      version: 2
    _EOF
    

    Výsledkem je soubor s totožným obsahem, jako je "šablona". Proměnná $eth_dev se nenahradila. Ani když jsem zkoušel $(eth_dev).
    LinMuck, WinFuck :-P
    Řešení 1× (Petr Maleček (tazatel))
    Petr Maleček avatar 16.2.2024 00:13 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH a výsledek proměnné (příkazu) jako parametr
    Aha, tak už jsem se chytil, to je to moje kopírování částí kódu a nepřemýšlení. Problém byl v uvozovkách '_EOF'. Po odstranění uvozovek vše funguje. Ach jo, já bych si namlátil. Ale díky za nakopnutí! :-)
    LinMuck, WinFuck :-P

    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.