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 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 0
    dnes 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    dnes 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 26
    24.12. 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

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

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (35%)
     (2%)
     (12%)
     (2%)
     (1%)
     (2%)
     (16%)
     (18%)
     (13%)
    Celkem 95 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Dotaz: Echo s mezerami

    24.3.2009 19:10 LorD_OniX
    Echo s mezerami
    Přečteno: 364×

    Ahoj, mam skipt:

    - ocekava na svem vstupu cteni z stdin, takze mu posleme pres cat libovolny soubor

    - tento skript tento soubor zpracovava

    - v tomto skriptu jsem si dal cteni toho souboru po radcich, syntax:

    while read line

    do

        echo "$line"

    done

    - toto funguje skvele (vstupem jsou data vstupniho souboru), ale echo ma jednu nezadouci vlastnost a tu, ze

    kdyz je ve vstupnim souboru na radku libovolny pocet mezer nasledovany textem, echo nikdy tyto mezery nevypise a vypise

    radek az od prvniho vyskytu textu. Potreboval bych proto od vas kdo mate dobre zkusenosti s bashem, jak byste v cyklu resili

    postupne prochazeni souboru po radcich a aby to vypisovalo i tyto mezery, popripade nejak to implementovat do toho cyklu

    co jsem napsal ja. Predem moc dekuji

    Odpovědi

    24.3.2009 19:34 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Echo s mezerami
    ale echo ma jednu nezadouci vlastnost a tu, ze kdyz je ve vstupnim souboru na radku libovolny pocet mezer nasledovany textem, echo nikdy tyto mezery nevypise a vypise
    Problém není u echo, ale u read, který přeskočí počáteční mezery.
    a aby to vypisovalo i tyto mezery
    To záleží, co s tím chcete dál dělat - nestačilo by to řešit rourou/použít AWK/...
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    24.3.2009 19:37 LorD_OniX
    Rozbalit Rozbalit vše Re: Echo s mezerami

    Dekuji moc za tu vasi odpoved. Ja bych potreboval to nejak nacitat ( nejlepe po radcich), abych tyto radky mohl zpracovavat ci upravovat. A prave potrebuji aby

    to nacitalo do nejake promenne i ty mezery, ktere jak jste rekl funkce read orezava. Bohuzel nevim jak pres rouru to resit. Pres awk taky nevim, ja

    uz mam napsany cely skript v bashi a jenom bych potreboval si tam nejak vlozit tuto funkci do promenne abych s ni mohl dale pracovat. Pokud ale mate

    lepsi napad, napiste, budu moc rad.

    24.3.2009 19:45 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Echo s mezerami
    abych tyto radky mohl zpracovavat ci upravovat

    Kupodivu :-). Jde o to, co s nimi chcete dělat.

    Pokud ale mate lepsi napad, napiste, budu moc rad.

    Jeden bych měl - nezalamujte řádky, pokud nekončí odstavec. Díky

    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    24.3.2009 23:09 deadmail
    Rozbalit Rozbalit vše Re: Echo s mezerami
    Da sa zmenit oddelovac v bashi.

    Takze pred cyklus while nastavit napr. IFS="@". Potom uz medzery na zaciatku nacita v poriadku - fungovat to bude ale len ak na zaciatku ziadneho riadku nie je zavinac(@).

    Treba zvolit znak, ktory sa urcite v subore nenachadza ako prvy znak v riadku.
    25.3.2009 18:24 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Echo s mezerami
    Viděl bych jako rozumné jako oddělovač zvolit právě znak pro nový řádek, místo obvyklá svaté trojice LF,TAB,SPACE...
    while IFS="^M" read line; do
      echo "$line";
    done < soubor.txt
    
    ^M lze vložit buď ctrl+v + enter, nebo prostě
    bash$ while IFS="
    > " read line; do echo "$line"; done < a.txt
    
    nebo ve skriptu
    while IFS="
    " read line; do
      echo "$line";
    done < a.txt
    No a někdy když řádek nepotřebujete dělit se hodí i to $REPLY níže.
    24.3.2009 23:14 deadmail
    Rozbalit Rozbalit vše Re: Echo s mezerami
    nasiel som aj druhu moznost v bashi:
    while read
    do
        echo "$REPLY"
    done
    
    kozzi avatar 24.3.2009 23:44 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Echo s mezerami
    Doporucuju pouzit gawk (awk nee nejelo by ti to na adele ;-)). Jinak já osobně sem třetí část projektu napsal na jeden řádke v sedu, ale takovou prasárnu svět ještě neviěl :-D
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    25.3.2009 17:46 LorD_OniX
    Rozbalit Rozbalit vše Re: Echo s mezerami

    Taky jsem videl u kamose jednou velkou rouru se sedem. Zkusil jsem ten field separator a funguje to, strasne moc diky. Nenapadla me takovato vec. Pokud jeste muzete odpoved, tak se me podarilo prepsat tento skript awk, ale zarazil jsem se u jedne veci:

     

    cat soubor | awk '

    /libovolny reg. vyraz/ {

     #prikazy

    a tady v tomto miste bych potreboval z promenne $0 vypsat text, ktery bych nejak upravil pres regularni vyraz. Jenze kdyz napisu

    /libovolny reg. vyraz/ { print }, tak bash hodi chybu, protoze tato syntaxe neni dovolena

    mam knizku s awk a nic jsem tam na tento zpusob nenasel nebo kdyby do promenne sel ulozit reg. vyraz

    umim delat hodne jenom v sedu a nevim jestli ma awk neco taky na substuci, abych si mohl s toho reg. vyrazu vytahnout co potrebuju

    }

    Diky moc za odpovedi a za predesle rady :)

    '

    25.3.2009 18:39 LorD_OniX
    Rozbalit Rozbalit vše Re: Echo s mezerami

    Uz jsem na to prisel, posledni vec uz je jenom jak nahradit znaky < > & za sve html ekvivalenty:

    gsub("&","&amp;") funguje
    gsub(">","&gt;") tyto dva nefunguji, kdyz jsem pouzil escape sekveni \&gt; napr, tak bash hodi warning  warning: escape sequence `\&' treated as plain `&'
    gsub("<","&lt;")

    Diky moc za rady.

    26.3.2009 10:03 deadmail
    Rozbalit Rozbalit vše Re: Echo s mezerami

    mne to funguje takto:

    awk '{gsub(/&/, "\\&amp;");
    gsub(/</, "\\&lt;");
    gsub(/>/, "\\&gt;");
    print}' subor
    
    

    upravene podla www.delorie.com/gnu/docs/gawk/gawk_136.html .

    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.