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 19:11 | Zajímavý projekt

    Vývojáři Ubuntu představili projekt Myna, tj. iniciativu zaměřenou na přidání funkce převodu řeči na text do prostředí desktopu Ubuntu. Dle plánu již v Ubuntu 26.10.

    Ladislav Hagara | Komentářů: 0
    dnes 18:33 | Zajímavý software

    Společnost Epic Games představila nový open source systém pro správu verzí Lore navržený pro "bezprecedentní škálovatelnost dat i týmů a optimalizovaný pro projekty, včetně her a zábavy, které kombinují kód s velkými binárními soubory, aby uspokojil potřeby vývojářů i umělců". Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    dnes 15:33 | IT novinky

    Úřad pro ochranu hospodářské soutěže (ÚOHS) provedl v říjnu 2024 místní šetření u společnosti Seznam.cz. Úřad prověřoval důvodné podezření na možné protisoutěžní jednání, konkrétně zneužití dominantního postavení. Krajský soud v Brně v květnu 2025 konstatoval, že toto šetření bylo nezákonné. Nejvyšší správní soud (NSS) včera rozhodl, že šetření bylo provedeno v souladu se zákonem. Krajský soud bude muset případ posoudit znovu.

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

    Byl představen skládací telefon Commodore Callback 8020. Ani hloupý, ani chytrý. Pro fanoušky Commodore a digitálního minimalismu. Bez webového prohlížeče a sociálních sítí. S předinstalovaným WhatsAppem. S operačním systémem Sailfish OS.

    Ladislav Hagara | Komentářů: 0
    dnes 08:22 | Bezpečnostní upozornění

    V OpenBSD byla objevena 27 let stará chyba v ppp pomocí níž lze vzdáleně obejít autentifikaci. Chyba byla nahlášena 12.6. a 14.6. byla opravena. Bližší info v článku A 27-Year-Old Authentication Bypass in OpenBSD's PPP Stack.

    Max | Komentářů: 6
    dnes 05:22 | Zajímavý článek

    Odpověď Evropské komise (pdf) k evropské občanské iniciativě Stop Destroying Videogames, jež je součástí hnutí Stop Killing Games: "Komise se domnívá, že v této fázi nemůže navrhnout právní povinnost zachovat hratelnost videoher poté, co přestaly být poskytovány komerčně. Důvodem jsou i stávající práva duševního vlastnictví. Podle autorského práva EU mají nositelé práv výlučná práva ke svým výtvorům. Kromě autorských práv mohou být

    … více »
    Ladislav Hagara | Komentářů: 8
    včera 16:11 | Nová verze

    Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    včera 14:11 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 21
    včera 11:44 | Komunita

    Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.

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

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1926 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Jak vypsat string ze souboru

    27.1.2019 21:32 dnes
    Jak vypsat string ze souboru
    Přečteno: 692×
    Ahoj.

    V souboru data mám čtyři řádky
    1-abcd
    20-efgh
    300-ijkl
    4000-mnop
    
    pomůže někdo jak vypsat string "ijkl" pomocí bashe? Znám jenom čísla před pomlčkou, string za pomlčkou neznám.

    Děkuji za pomoc.

    Řešení dotazu:


    Odpovědi

    27.1.2019 22:05 camel1cz | skóre: 25
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    bashem nevím, ale jinak je možnosti plno... napr. sed, awk nebo grep+cut

    27.1.2019 22:23 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    grep ^300- soubor.txt

    Jinak bash, to je v podstatě jakési lepidlo pro různé nástroje. V tomto případě by sis ještě vysledem měl oříznout.
    xkucf03 avatar 27.1.2019 23:45 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    Což jde třeba sedem nebo i tím grepem, když zapneme Perlovské regulární výrazy:
    $ cat data.txt 
    1-abcd
    20-efgh
    300-ijkl
    4000-mnop
    
    $ cat data.txt | grep -oP '(?<=300-).*'
    ijkl
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Bystroushaak avatar 28.1.2019 13:27 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    Taky to jde klasicky cutem:
    $ grep 300 data.txt | cut -d "-" -f 2
    ijkl
    
    k3dAR avatar 29.1.2019 03:04 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    btw: UUOC ;-) =>
    $ grep -oP '(?<=300-).*' data.txt
    ijkl
    porad nemam telo, ale uz mam hlavu... nobody
    xkucf03 avatar 29.1.2019 07:56 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše UUoC

    UUoC znám, ale příkazy/roury mi přijdou čitelnější, když v nich data tečou zleva doprava.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    29.1.2019 02:26 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru

    Místní klasika: Tazatel se ptá na bash, ale respondenti místo toho vymýšlejí grep, sed, awk a kdovíco všechno ještě a pak to nakonec vyeskaluje do extrémů typu perl. :-D Trochu jako v politice, že jo…

    key=300  # co má být před pomlčkou
    
    while read line; do
      if [[ "$line" = "$key"-* ]]; then
        echo "${line#*-}"
        break  # jen první shoda (?)
      fi
    done < /cesta/k/tomu/souboru
    
    xkucf03 avatar 29.1.2019 08:01 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru

    Na tohle jsem taky myslel, ale nechtělo se mi s tím psát :-) Nicméně je dobré, že sem toto řešení píšeš.

    Jinak ale PCRE neznamená, že by v tom nějak figuroval Perl – jsou to pouze regulární výrazy v syntaxi kompatibilní s těmi Perlovými.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Bystroushaak avatar 29.1.2019 09:32 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    Nevolá = program test?
    xkucf03 avatar 29.1.2019 17:31 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    $ type test
    test je součást shellu
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Bystroushaak avatar 29.1.2019 20:13 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    $ whereis test
    test: /usr/bin/test /usr/share/man/man1/test.1.gz
    $ file /usr/bin/test
    /usr/bin/test: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=3de4ee302f56bd8e08a64b0d827e165750b3b65f, stripped
    
    Ale asi jn.
    k3dAR avatar 29.1.2019 20:30 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru
    whereis hleda externi, bash pouzije svuj interni, stejne jako napr. sve echo, dokud nezadas ty cestu k tomu externimu...
    porad nemam telo, ale uz mam hlavu... nobody
    29.1.2019 20:42 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak vypsat string ze souboru

    Většinou ne.

    Jedna hranatá závorka je v podstatě ekvivalent příkazu test. Existuje většinou /bin/[ Jako symlink na /bin/test. To je pro shelly starší / jednodušší než bash.

    Bash má [ i test jako vestavěné příkazy, takže ani jednou hranatou závorkou se v bashi externí proces nespouští. (Jde to nějak podrobněji nastavit, ale nechce se mi to hledat.)

    Dvě hranaté závorky jsou vestavěná záležitost v bashi — nemají už nic společného s příkazem test a umí toho mnohem víc než test. Mají rozšířenou syntaxi, dovedou matchovat vůči „extglobům“ atd. atp.

    xkucf03 avatar 29.1.2019 21:11 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Vestavěné příkazy shellu

    Jde to takhle:

    $ type [
    [ je součást shellu
    
    $ enable -n [
    
    $ type [
    [ je /usr/bin/[

    nevím, jestli existuje ještě jiný způsob (tedy kromě překompilování Bashe bez podpory určitých příkazů).

    Nebo by šel naopak implementovat jako vestavěný příkaz i ten cat (myslím, že je v příkladech ve zdrojácích Bashe). Pak by to byl prostě jen jiný zápis pro < a nespouštěl by se externí příkaz. BTW: ty vestavěné příkazy se dají načíst i dodatečně z knihovny – není potřeba překompilovávat celý Bash. Takže si člověk může dopisovat vlastní příkazy…

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

    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.