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í
×
včera 17:11 | Bezpečnostní upozornění

V PHP byla nalezena bezpečnostní chyba CVE-2021-21703 zneužitelná k lokální eskalaci práv. Opravena je v upstream verzi 8.0.12.

Ladislav Hagara | Komentářů: 1
včera 14:11 | Zajímavý projekt

Na Crowd Supply běží kampaň na podporu zařízení KrakenSDR s pěti přijímači RTL-SDR. Lze je používat nezávisle nebo současně jako radiozaměřovač nebo pasivní radar.

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

Implementace OpenPGP Sequoia PGP byla přelicencována z GPL 2+ na LGPL 2+. Vývojáři to zdůvodňují na dvou příkladech: Apple nepovoluje GPL software ve svém App Storu a problém s GPL má také Thunderbird.

Ladislav Hagara | Komentářů: 0
včera 10:11 | IT novinky

Problémy s výrobou a dodáváním má také Raspberry Pi. Raspberry Pi 4 s 2 GB RAM proto dočasně zdražilo z 35 na 45 dolarů.

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

Byla vydána vývojová verze 2.99.8 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP. Jedná se o další krok směrem k verzi 3 postavené na GTK 3. Přehled novinek i s náhledy v oznámení o vydání a v souboru NEWS na GitLabu. Stabilní verze je 2.10.28.

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

Obsáhlý zápisek v blogu jednoho z vývojářů Haiku, svobodného operačního systému inspirovaného BeOS, popisuje nejen zkušenosti s notebookem Lenovo ThinkPad T510 a posléze W541, ale průběžně také rozvíjí úvahy o svobodném softwaru, právu na opravu (right to repair), (ne)zveřejňování specifikací hardwaru, dotýká se politiky podepisování distribučních klíčů nejen Secure Boot aj.

Fluttershy, yay! | Komentářů: 13
20.10. 23:44 | Nová verze

OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 17.0.0 a krátce na to 17.0.1 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). Přehled novinek v článku na Medium.

Ladislav Hagara | Komentářů: 5
20.10. 20:33 | IT novinky

Microsoft představil vscode.dev aneb Visual Studio Code běžící ve webovém prohlížeči.

Ladislav Hagara | Komentářů: 5
20.10. 15:22 | Komunita

Organizace Software Freedom Conservancy podala žalobu (pdf) na výrobce televizorů Vizio kvůli opakovanému porušování licence GPL.

Ladislav Hagara | Komentářů: 5
20.10. 13:33 | Nová verze

Byla vydána nová verze 1.31 webového prohlížeče Brave (Wikipedie, GitHub). Výchozím webovým vyhledávačem se stává Brave Search. Ten lze využívat i v jiných prohlížečích na adrese search.brave.com. Uživatelé Brave se mohou podílet na jeho vylepšování, pokud povolí v nastavení Web Discovery Project (WDP).

Ladislav Hagara | Komentářů: 2
Kolik monitorů (obrazovek) používáte současně?
 (49%)
 (36%)
 (14%)
 (1%)
Celkem 395 hlasů
 Komentářů: 29, poslední 19.10. 07:04
Rozcestník



Dotaz: Bash: Vyjmutí části slova až k určitému výrazu

David Watzke avatar 12.12.2005 15:19 David Watzke | skóre: 74 | blog: Blog... | Praha
Bash: Vyjmutí části slova až k určitému výrazu
Přečteno: 304×
Ahoj. Pro svůj skript potřebuju ze slova vyjmout jen to, co je před 2 a za 2. Třeba z abc2def do jedný proměnný abc a do druhý def. Předpokládám, že mi s tím pomůže awk, ale opravdu ho nemůžu (ani s pomocí manuálu) pochopit.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

Odpovědi

12.12.2005 15:23 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
nestačí ti cut?
[15:22:40]-[~]-
[tsunami@vodik]$ cut -d2 -f 2 <<< neco2nekam
nekam

[15:22:42]-[~]-
[tsunami@vodik]$ cut -d2 -f 1 <<< neco2nekam
neco
-- Nezdar není hanbou, hanbou je strach z pokusu.
David Watzke avatar 12.12.2005 15:26 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Jo, ten rozhodně postačí. Netušil jsem, že umí i tohle. :-) Díky.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
12.12.2005 17:12 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Ještě elegantnější, alébržto nevolá žádné subprocesy, je vystačit si s prostředky shellu (sh or bash).
what=neco2nekam
prefix=${what%2*}
sufix=${what#*2}
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
12.12.2005 17:15 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Jestli tuším k čemu to má sloužit, potom
from=${0%2*}
to=${0#*2}
:-D
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
12.12.2005 17:26 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
s tím sh bych si nebyl tak jistý (solaris 10):
# what=neco2nekam
# prefix=${what%2*}
bad substitution
-- Nezdar není hanbou, hanbou je strach z pokusu.
12.12.2005 19:03 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
$ exec /usr/xpg4/bin/sh
$ what=neco2nekam
$ prefix=${what%2*}
$ echo $prefix
neco
$ 
;-) Ale /bin/sh to neumí :-(
12.12.2005 19:10 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
můj zas jo, To je fakt hokej. :-(
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
12.12.2005 17:19 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Jedno drobné upozornění <<< je specialita bash a sh to nezná. Přitom zápis
echo -n cosik | some
je ekvivalentní a přitom přenositelný. echo je interní příkaz a žádný fork() to neudělá.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
David Watzke avatar 12.12.2005 19:35 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Napsal jsem to tedy radši takhle, nerad bych, aby to někde dělalo trable.
mp32flac|mpc2flac|ogg2flac|wma2flac) # a mnoho dalších formátů :)
 $(echo $1 | cut -d2 -f1)2wav
 wav2$(echo $1 | cut -d2 -f2)
;;

wav2flac|wav2ogg|wav2mp3|wav2mpc)
 wav2$(echo $1 | cut -d2 -f2)
;;

mp32wav|mpc2wav|ogg2wav|wma2wav)
 $(echo $1 | cut -d2 -f1)2wav
;;
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 12.12.2005 18:23 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Dobře, tohle bych měl. Ještě mě trápí jedna věc. Jak narvat jedný funkci v case víc výrazů pomocí kterých se spustí? (Pardon za neprávně použité termíny, radši to objasním příkladem.)
{ogg2wav,wav2ogg}) # (vím, že je to nesmysl, proto se ptám jak to udělat)
 $(cut -d2 -f1 <<< $1)2wav
 wav2$(cut -d2 -f2 <<< $1)
;;
namísto
ogg2wav)
 $(cut -d2 -f1 <<< $1)2wav
 wav2$(cut -d2 -f2 <<< $1)
;;

wav2ogg)
 $(cut -d2 -f1 <<< $1)2wav
 wav2$(cut -d2 -f2 <<< $1)
;;
Prostě abych to nemusel rozepisovat a mohl narvat hafo výrazů k jedný funkci. :-) Použil bych *), ale to musí mít nápověda.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 12.12.2005 18:47 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Částečně vyřešeno, ale stále bych rád znal odpověď. Udělal jsem to takhle:
???*2???*) # aby bral jen s dvojkou uprostřed
           # a kolem min. 3 znaky z obou stran

*)
# nápověda
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
12.12.2005 18:52 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
$ help case
case: case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac
    Selectively execute COMMANDS based upon WORD matching PATTERN.  The
    `|' is used to separate multiple patterns.
    ^^^
David Watzke avatar 12.12.2005 18:58 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Vyjmutí části slova až k určitému výrazu
Díky moc.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

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.