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 18:00 | IT novinky

    DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 2
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

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

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

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

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.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 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 13
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (68%)
     (11%)
     (2%)
     (20%)
    Celkem 566 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?

    Libco avatar 18.10.2008 14:29 Libco | skóre: 8 | Banska Bystrica - sk
    Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Přečteno: 235×
    V bash-i
    Konkrétne. Je nejaký riadok scriptu v bashi (ten si viem nájsť a vybrať) napr.:
    somar ide do kopca: nevladze; lebo vaha tiaze je "20" kg /
    Ako z tohto riadku vybrať do premennej napr. časť:
    nevladze; lebo vaha tiaze je "20

    čiže premenna=.......
    Díky za odpoveď.
    lama

    Odpovědi

    18.10.2008 16:24 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    neni mi jasna souvislost te vybrane casti s puvodnim retezcem (podle ceho tu cast vybrat). jinak obecny postup je: promenna=`echo $original | zpracovani` ; pricemz zpracovani je obvykle pres sed, awk a dalsi. v jednoduchych pripadech lze delat veci typu promenna=${original/neco/} - viz man bash.
    In Ada the typical infinite loop would normally be terminated by detonation.
    Libco avatar 18.10.2008 16:36 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Proste potrebujem podľa miesta v riadku(možno pozícia) vybrať konkrétnu časť.
    lama
    18.10.2008 17:24 petr
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Definuj, podle čeho chceš vybrat tu proměnnou - je to číslo řádku, nebo část na řádku za klíčovým slovem, nebo n-té slovo na řádku, nebo...
    Libco avatar 18.10.2008 17:37 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Viem že napr. je premenná x="popokatepetl > << ## $3 mame sa radi" Je možné nejakým spôsobom prečítať počat znakov a na základe konkrétnych čísiel (napríklad 4, 2) vybrať obsah novej premennej? Malo by to byť: popokatepetl > << ## $3
    lama
    18.10.2008 20:56 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    jak jsem rekl, vzdy pouzijete schema promenna=`echo $retezec | program` ... napriklad pro pocet znaku se pouzije neco jako | wc -c | awk '{print $1}', pro znaky 3-10 muze byt neco jako | cut -c 5-10.

    btw, tohle je dost neefektivni vuci systemu, pokud chcete zpracovavat retezce ve velkem, doporucuji perl.
    In Ada the typical infinite loop would normally be terminated by detonation.
    19.10.2008 03:41 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    ... vzdy pouzijete schema ...
    dovolím si oponovat - bash je v tomhle poměrně silný. Na věci, jako počet znaků, jednoduché substituce apod. nepotřebujete volat externí programy. v podstatě jediné, co bashi (doufám, že jen zatím) chybí, jsou regulární výrazy...

    -m.
    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    19.10.2008 18:20 luky
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Vylozene na zpracovavani textu (interne) je slaby. A regularni vyrazy umi.
    19.10.2008 03:34 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    tohle?
    [miky@ghoulie ~]$ x="nazdar pepo, jak je v depu?"
    [miky@ghoulie ~]$ echo ${x:7:4}
    pepo
    
    z toho, jak to popisuješ opravdu nejde pochopit, co chceš ;)

    -m.

    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    Libco avatar 19.10.2008 08:34 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Toto "echo ${x:7:4}" je dobré a funguje, problém je však v tom, že by to malo byť takto: echo ${x:7:posledný znak riadku mínus 4} a "posledný znak riadku mínus 4" neviem zadefinovať.
    lama
    19.10.2008 12:25 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    echo ${param:4:2}
    
    vrátí 2 znaky od pozice 4 (tedy znaky na pozicích 4 a 5). Pokud to chceš udělat od konce, stačí
    echo ${param: -4:2}
    
    což vrátí 2 znaky od 4. znaku od konce, tedy n-4. a n-3. znak, kde n je počet znaků v hodnotě proměnné (bacha na tu mezeru, tam musí být).

    Ale to asi, podle toho, co si napsal níž, stejně neni to, co chceš :)

    -m.

    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    Libco avatar 19.10.2008 14:39 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Aj tak díky, zas viem niečo nové.
    lama
    Libco avatar 19.10.2008 15:34 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Dá sa "y=(echo ${param:4})" nahradiť iným príkazom?
    Skúšam to v busyboxe a ten píse:
    -sh: Syntax error: Bad substitution
    Aj toto "echo ${param:4}" robí to isté
    echo $param a echo ${param} pracujú správne
    lama
    19.10.2008 15:52 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    obávám se, že zrovna tohle busybox neumí (ačkoliv umí většinu ostatních "expanzí"). Tohle jedině přes sed/awk/cut apod...

    např:
    echo $y | cut -c4-
    
    ale to, co asi spíš chceš, je dostat část za rovnítkem:
    echo $y | cut -d= -f2
    
    to druhý je bezpečnější, bo neřešíš, kolikátej znak to rovnítko je...

    -m.
    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    19.10.2008 15:54 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    nebo eště lepší
     echo ${x#*=} 
    
    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    Libco avatar 19.10.2008 16:34 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Super, veľmi pekne ďakujem.
    lama
    Libco avatar 19.10.2008 15:39 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Proste potrebujem z tohto riadku:
    s:/ezap/ui/skin=/var/tuxbox/config/enigma/skins/new_blueline_skin_v3.esml
    dostať do premennej len túto časť:
    /var/tuxbox/config/enigma/skins/new_blueline_skin_v3.esml
    V bash-i to funguje príkazom: y=$(echo ${x:16}), pričom $x je hore uvedený riadok.
    V busyboxe to nejde.
    lama
    Libco avatar 19.10.2008 10:49 Libco | skóre: 8 | Banska Bystrica - sk
    Rozbalit Rozbalit vše Re: Ako vybrať konkrétnu časť premennej a ďať ju do druhej premennej?
    Tak som to nakoniec vyriešil. :)
    Ja som vlastne potreboval v riadku zmeniť jediné dvojciferné číslo za iné konkrétne.
    pôvodný riadok:
    name="eServiceSelector.Entry.Description" font="Blue.Regular" size="24"
    príkaz:
    sed -i '/eServiceSelector.Entry.Description/s/[0-9][0-9]/34/g' cesta_k_suboru
    výsledok:
    name="eServiceSelector.Entry.Description" font="Blue.Regular" size="34"

    Čerpal som hlavne odtiaľto: http://sed.sourceforge.net/sed1line_cz.html

    Díky za rady.
    lama

    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.