abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:22 | IT novinky

    Nejnovější publikace v knižní edici správce české národní domény nese název ESP32 prakticky a jejím autorem je Martin Malý. Kniha je průvodcem ve světě výkonných a velmi bohatě vybavených mikrokontrolérů společnosti Espressif. V knize se naučíte, jak využít tento čip pro různé projekty, od základního nastavení a programování ESP32 v Arduino IDE, přes připojení k Wi-Fi a Bluetooth, až po pokročilé techniky, jako je realtime operační systém FreeRTOS, příjem signálu z družic nebo programování v ESP-IDF.

    Ladislav Hagara | Komentářů: 1
    dnes 10:44 | IT novinky

    Byl představen nový oficiální 7palcový Raspberry Pi Touch Display 2. Rozlišení 720 × 1280 pixelů. Cena 60 dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 08:11 | Komunita

    Na čem aktuálně pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za říjen (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 22:55 | Nová verze

    Byla vydána verze 0.4.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Z novinek lze vypíchnout počáteční podporu Rustls, tj. implementaci TLS v Rustu. Společnost Cloudflare uvolnila framework Pingora letos v únoru pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | Komunita

    Byla vydána první pre-release verze desktopového prostředí Xfce (Wikipedie). Vydání ostré verze je plánováno na 15. prosince. Současně byla vyhlášena soutěž o výchozí wallpaper pro Xfce 4.20. Uzávěrka přihlášek je 15. listopadu.

    Ladislav Hagara | Komentářů: 0
    2.11. 11:00 | Pozvánky

    Přímý přenos z konference OpenAlt 2024, jež probíhá tento víkend v prostorách FIT VUT v Brně. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma.

    Ladislav Hagara | Komentářů: 1
    1.11. 23:55 | Humor

    V Coloradu unikla hesla k volebním počítačům. Více než 2 měsíce byla tabulka se stovkami hesel do BIOSu volně na webových stránkách. Dle úřadu je potřeba ještě druhé heslo, takže se o žádnou bezprostřední bezpečnostní hrozbu pro volby nejedná [Ars Technica].

    Ladislav Hagara | Komentářů: 0
    1.11. 18:33 | IT novinky Ladislav Hagara | Komentářů: 28
    31.10. 22:44 | IT novinky

    Apple představil nový MacBook Pro s čipy M4, M4 Pro a M4 Max.

    Ladislav Hagara | Komentářů: 80
    31.10. 22:00 | Zajímavý software

    Na GOG.com běží Halloween Sale 2024. Při té příležitosti lze získat zdarma počítačovou hru Return of the Phantom.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: ambiguous redirect / Odstranění prázdných řádků

    2.7.2013 13:34 Jura
    ambiguous redirect / Odstranění prázdných řádků
    Přečteno: 609×

    Ahoj,

    mám script co bere řádek po řádku,nějak ho zpracuje a s kolegou jsme dodali filtr co by měl odstranit prázdné řádky a prázdný ukončovací znak na konci.

     

    Ale píše nám to chybu ambiguous redirect

     

    Výsek ze scriptu (poslední řádka

    done < $(cat DBtest.txt | grep -v "^$" | grep -v "^[ ]*$") ambiguous redirect


    Celý script


    #!/bin/bash

    while read line do

    TĚLO SCRIPTU CO PRACUJE S ŔÁDKY

    done < $(cat DBtest.txt | grep -v "^$" | grep -v "^[ ]*$")

     

    a) dá se filtr nějak upravit

    b) Je nějaké lepší řešení ?

     

    Díky

     

    Jura


    Řešení dotazu:


    Odpovědi

    Řešení 1× (Luboš Doležel (Doli))
    2.7.2013 13:55 potato
    Rozbalit Rozbalit vše Re: ambiguous redirect / Odstranění prázdných řádků
    Ambigious redirect v podstatě znamená, že to $(cat...) se neexpanduje na jedno jméno souboru.

    Pokud chceš celý výstup příkazů uvnitř $(cat...) poslat jako vstup toho while read, tak to má být
    cat... | while read
    Lepší řešení by bylo provést celou tu věc, kterou děláš v while read... nějakou rourou, lze-li to.

    Jinak prázdný řádek vyhovuje regulárnímu výrazu ^[ ]*$ taky, takže první grep je zbytečný a stačí
    <DBtest.txt grep -v '^[ ]*$' | while read ...
    2.7.2013 22:43 rubicon
    Rozbalit Rozbalit vše Re: ambiguous redirect / Odstranění prázdných řádků
    Ono to může být i jinak.

    while read ... done < <(grep -v '^ *$' DBtest.txt) nebo

    while read ... done <<< "$(grep -v '^ *$' DBtest.txt)"
    2.7.2013 23:21 potato
    Rozbalit Rozbalit vše Re: ambiguous redirect / Odstranění prázdných řádků
    Může to být různě, ovšem obfuskace roury má smysl asi jen v případě, kdy je problém s tím, že roura vytváří subshell. Jinak jsou zápisy s přesměrováním z process substitution akorát taková shellová masturbace. Žádný proces neušetří a ještě navíc nutí shell celý výstup příkazu kamsi nabufferovat, což roura obecně nevyžaduje.

    Třídu znaků v grepu bych nemazal. Kdo ví, co je v té hranaté závorce doopravdy, třeba to je mezera a tabelátor...

    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.