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 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    dnes 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    dnes 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 10
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

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

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 6
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

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

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 9
    Jaké řešení používáte k vývoji / práci?
     (45%)
     (59%)
     (0%)
     (10%)
     (14%)
     (3%)
     (14%)
     (3%)
     (10%)
    Celkem 29 hlasů
     Komentářů: 3, poslední dnes 14:58
    Rozcestník

    Dotaz: Jak rozdělit řetězec před a za první tečkou v BASH

    13.3.2018 10:27 dnes
    Jak rozdělit řetězec před a za první tečkou v BASH
    Přečteno: 384×
    Dobrý den, netuším jak rozdělit v bash skriptu řetězec na dvě části, kdy před i za první tečkou může být libovolný počet znaků.
    část 1 === před první tečkou (mimo tečku)
    část 2 === za první tečkou   (mimo tečku)
    
    příklad
    VAR="214.je.cislo"     # část 1 = 214 , část 2 = je.cislo
    VAR="34.je.taky.cislo" # část 1 = 34  , část 2 = je.taky.cislo
    Poradíte mi někdo? Děkuji

    Řešení dotazu:


    Odpovědi

    13.3.2018 10:53 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH
    $ VAR="214.je.cislo" 
    $ CAST1=`echo $VAR | cut -d . -f1`
    $ CAST2=`echo $VAR | cut -d . -f2-`
    $ echo $CAST1
    214
    $ echo $CAST2
    je.cislo
    
    Řešení 1× (Michal Kubeček)
    13.3.2018 13:32 MM
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH

    A nebo interně rychleji jen:

    >VAR="214.je.cislo"
    >echo ${VAR%%\.*}
    214
    >echo ${VAR#*\.}
    je.cislo
    13.3.2018 16:27 dnes
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH
    @MM díky a jde prosím tě testovat proměnnou na existenci tečky? Nemůžu to nikde najít.

    13.3.2018 16:58 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH
    [[ $var == *.* ]]
    If you hold a Unix shell up to your ear, you can you hear the C.
    13.3.2018 20:06 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH

    Tenhle trik se občas hodí i pro jiné účely, např. test, zda proměnná začíná nebo končí určitým vzorkem:

      if [ "${var#*.}" != "$var" ]; then ...
      if [ "${var%.*}" != "$var" ]; then ...
    

    Využívá se toho, že expanze s odříznutím začátku nebo konce zachová původní řetězec, pokud se nenajde žádný odpovídající začátek/konec.

    13.3.2018 17:00 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH
    Tie backslashitka su tam zbytocne. Variable expansion ide podla shell-patterns nie podla regexpov.
    If you hold a Unix shell up to your ear, you can you hear the C.
    14.3.2018 07:08 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak rozdělit řetězec před a za první tečkou v BASH

    Protože (podle mě) nejlepší řešení se substitucemi už tu bylo zmíněné několikrát (#, %, ##, %% oddělí {nejkratší,nejdelší}' '{prefix,suffix}, (definovaný jako glob nebo extglob)), vybliju sem teď ještě jedno naschvál hnusné (leč ilustrativní a k dobrodružné četbě manuálové stránky vybízející) řešení:

    VAR='bla.ble.BLA.BLE'
    IFS=. read -a TOKENS <<<"$VAR"
    echo "${TOKENS[0]}"
    (IFS=.; echo "${TOKENS[*]:1}";)
    

    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.