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 16:44 | IT novinky

    Firma IBM uvedla svůj první mikropočítač Personal Computer před 45 lety, v srpnu 1981. Základní konfigurace modelu 5150 za 1 565 tehdejších dolarů obsahovala desktop s Intel 8088 a 16KB RAM, Color Graphics Adapter a klávesnici. Právě klávesnice Model F/XT vybavené kapacitními spínači, vlivné a s převodníkem dodnes použitelné, připomíná sběratelský web Admiral Shark's Keyboards.

    |🇵🇸 | Komentářů: 0
    dnes 14:22 | IT novinky

    Slovensko odhalilo ruské součástky ve dvou testovaných zařízeních na zjišťování přestupků v silničním provozu a označilo je za bezpečnostní riziko. S odvoláním na vyjádření slovenského Národního bezpečnostního úřadu (NBÚ) to včera oznámil ministr vnitra Matúš Šutaj Eštok. Zároveň ohlásil ukončení spolupráce svého úřadu s dodavatelem části uvedeného systému, slovenskou společností Soitron. Opozice, která na problematické kamery upozornila už dříve, vyzvala k odvolání ministra vnitra.

    Ladislav Hagara | Komentářů: 2
    dnes 06:00 | IT novinky

    Dle plánu dnes ve 13:00 proběhne veřejný test eDokladů. Jeho cílem je ověřit připravenost aplikace a související infrastruktury na vysokou souběžnou zátěž před podzimními komunálními volbami.

    Ladislav Hagara | Komentářů: 14
    dnes 04:11 | Nová verze

    Byla vydána nová verze 3.47 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.13 souvisejícího programovacího jazyka Dart (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    Byla vydána nová verze 26.1 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Bian-May. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

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

    Na akci Made by Google 2026 (YouTube) byla oficiálně představena jedenáctá generace telefonů Pixel s novým čipem Google Tensor G6 a hodinky Pixel Watch 5.

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

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) se spolu s partnery z dalších zemí připojil ke společnému upozornění (Joint Cybersecurity Advisory) týkajícímu se probíhající kybernetické kampaně skupiny LAUNDRY BEAR zaměřené na uživatele e-mailové platformy Zimbra Collaboration Suite (ZCS) nejméně od července 2025. NÚKIB doporučuje organizacím využívajícím Zimbra Collaboration Suite neprodleně ověřit, zda

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 14:22 | Nová verze

    Intel vydal 42 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20260811 mikrokódů pro své procesory.

    Ladislav Hagara | Komentářů: 0
    včera 05:33 | Zajímavý článek

    Sny o designu GNOME Shellu, článek s náhledy a videi, představuje dlouhodobou vizi týmu GNOME pro vylepšení uživatelského rozhraní GNOME Shellu. Zatímco nedávné verze přinášely spíše drobné úpravy, designéři nyní plánují zásadnější změny.

    Ladislav Hagara | Komentářů: 14
    včera 05:22 | Nová verze

    Byla vydána nová verze 10.5 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu důležitých bezpečnostních oprav, vylepšení funkcí a oprav chyb. Nově vyžaduje podporu ECC (Elliptic Curve Cryptography) v libcrypto, včetně křivky NISTP521.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2381 hlasů
     Komentářů: 31, poslední dnes 00:27
    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: 859×

    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.