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 15:44 | Nová verze

Byla vydána verze 3.12 prohlížeče obrázků gThumb (Wikipedie, GitLab). Z novinek lze zdůraznit například přidání podpory AVIF, HEIF a JPEG XL.

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

Byla vydána nová verze 5.5 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu. Ke stažení jsou oficiální binární balíčky pro Ubuntu 16.04, Ubuntu 18.04, Ubuntu 20.04, CentOS 7, CentOS 8 a Amazon Linux 2.

Ladislav Hagara | Komentářů: 0
dnes 09:00 | Komunita

Do pátku probíhá konference vývojářů Linuxu aneb linuxových instalatérů Linux Plumbers Conference 2021 (LPC 2021). Přednášky lze sledovat online.

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

Prohlížeč obrázků nsxiv (Neo (or New or Not) Simple (or Small or Suckless) X Image Viewer) byl vydán ve verzi 27.1. Jedná se o fork již nevyvíjeného prohlížeče obrázku sxiv. Přehled novinek v CHANGELOGu.

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

MojeFedora.cz informuje co nového přinese Fedora Workstation 35: Lepší podpora Waylandu pod ovladačem od NVidie, režim pro kiosky, myši s vysokým rozlišením, PipeWire, podpora zatemňovacích obrazovek, OpenGL nad Vulkanem a profily napájení.

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

Byla vydána nová verze 1.9.10 multiplatformního frontendu k emulátorům, herním enginům a multimediálním přehrávačům RetroArch (Wikipedie). Přehled novinek v příspěvku na blogu. RetroArch je nově k dispozici také na Steamu.

Ladislav Hagara | Komentářů: 0
včera 10:22 | Pozvánky

Od 23. do 25. září bude probíhat online konference LibreOffice 2021. Během tří dnů je připraveno okolo padesáti přednášek, workshopů a komunitních setkání s tématy týkající se kancelářského balíku, komunity a open source. Program je k dispozici na stránce konference. Konference se bude konat na komunikační platformě Jitsi a je zdarma. Připravuje se také YouTube přenos. Registrace je dostupná na stránce konference.

Zdeněk Crhonek | Komentářů: 0
včera 08:00 | Zajímavý software

Chafa (GitHub) je utilita a knihovna pro zobrazování libovolných obrázků v terminálu. Novinky v nejnovější verzi 1.8 v příspěvku na blogu.

Ladislav Hagara | Komentářů: 9
19.9. 12:11 | Nová verze

Společnost Jolla oznámila vydání verze 4.2.0 s kódovým názvem Verla mobilního operačního systému Sailfish OS (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
18.9. 20:33 | Nová verze

Foreman (Wikipedie), nástroj pro kompletní správu životního cyklu fyzických i virtuálních serverů, byl vydán ve verzi 3.0. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
Dotykový displej na notebooku nebo desktopu
 (36%)
 (7%)
 (6%)
 (52%)
Celkem 471 hlasů
 Komentářů: 11, poslední 18.9. 18:45
Rozcestník



Dotaz: awk- jak se zbavit nepotrebneho znaku

24.10.2005 07:49 mysak
awk- jak se zbavit nepotrebneho znaku
Přečteno: 354×
Ahoj,
pomoci awk vytahuji ze souboru stringy, oddelene mezerou- to je v pohode, ale nektery string obsahuje na konci carku nebo nektery je cely v uvozovkach. Otazka- nevite jak prinutit awk, aby ten string o tyto znaky zbavil, proste je nevypsal, btw man jsem procetl ale nikde jsem nic nenasel...

Diky, michal

Odpovědi

24.10.2005 09:31 mlz | skóre: 12 | blog: Obcas
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Cetl, ale spatne :-)) Magicka promenna=FS
{BEGIN {FS='[;,:~]*[\t ]'} #
Bude Oddelovat slova pomoci mezery,tabelatoru, a ignorovat strednik, carku, dvojtecku, tildu pred mezerou Mia More, Zelenina: mrkev; Petrzel -- $3 bude Zelenina
Uvozovky se resi pres split/gsub
Na rozdil od perlu, FS je REGEX (muze byt)
26.10.2005 10:36 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Co to plácáš o tom perlu? Neber perl do huby nadarmo. Co je jakýsi FS? Nic takového v perlu není, tam se to dělá pomocí split a jeho parametr pochopitelně regexp je. Jestli se chceš vytahovat na RS, tak to v perlu opravdu není regexp, ale to není tento případ.
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é.
24.10.2005 09:34 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Třeba
awk -F '[",]? "?' ...
nebo je odstraňovat pomocí gsub().
25.10.2005 08:55 mysak
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
ahoj,
dik za tip, odstraneni carek OK, ale nevim jak na ty uvozovky. Soubor obsahuje radky, napr.

pepa "karel", "jindra",

pomoci gawk -F '[",]? "?' '{print $2,$3}' soubor.txt dostanu
karel" jindra"

a pomoci gawk -F '[,:"]*[\t ]' '{print $2,$3}'soubor.txt dostanu
"karel "jindra

Stale mi to zbyvaji uvozovky, nevite jak s nimi pryc, bez pouziti gsub()
mysak
25.10.2005 21:07 mysak
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Opravdu nemate nejakej TIP?
26.10.2005 07:58 mlz | skóre: 12 | blog: Obcas
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
1/ tr -d '"' < soubor.txt |awk ... # umaze uvozovky tr
2/ gsub(["], ""); ...

3/ Netusim, ma-li byt $0='Karel "Karel", Milan; Ofsem' $1=="Karel Karel", nebo "Karel"
26.10.2005 08:52 mysak
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Potrebuji aby ty jmena byla bez cehokoli- bez uvozovek, bez apostrofu, proste holej text.
26.10.2005 09:56 mlz | skóre: 12 | blog: Obcas
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Ten vstupni soubor prozente tr -d '"' - to funguje - a zbavite se uvozovek

Ten gsub funguje taky - v pripade, ze nemate tr (v Linuxu jsou to u mne/gentoo coreutil)

V cem je problem ?
26.10.2005 10:29 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Hele, co kdyby jsi nám sem hodil vzorek toho textu. Z toho tveho zmateneho popisu jsem nepochopil ani prd.
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é.
26.10.2005 11:08 mysak
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
JO, to je pravda, je to trosku zmateny, ten vzorek:

Pavel Jindra "Zuzana", "Michal", Tomas
Rosta Ondrej "Robert", "Radim", Honza Pavel
Martin Sofie "Daniel", "Dominik", Erik Klement Vladislav Vladimir

A takhle je to celej dlouhej soubor (radky pod sebou), potrebuji do DB ulozit jen prave ty jmena bez uvozovek. Carek se jde zbavit.
26.10.2005 12:14 mlz | skóre: 12 | blog: Obcas
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Nepochopil jsem

Proc to nejde prohnat pipou (sed, tr, awk -- cokoliv), kde odstranim carky, uvozovky apod a potom teprve to prozenu awk.

CMD_kde_odstranim[",; \t] <Z_INPUT_SOUBORU | awk ... |

V pripade, ze NEZALEZI na obsahu $1, ty znaky (+mezera) bych nahradil \n - kazda polozka = samostatny radek

A asi bych to nedelal v awk, jedna-li se o INSERT INTO... Vetsina jazyku toto zvlada. Ale priznam se, ze je stale malo informaci...
26.10.2005 13:59 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
jojo, taky mi to nějak pořád není moc jasné. Řešení je přitom tolik od
tr -d '",' | tr '[:space:]' '\n'
přes
sed -e 'y/",//;s/  */\n/'
až po
# super hyper parser for Mysak's file
sub parseMysaksFile (*&) {
  my ($file, $whatToDo) = @_;
  while (<$file>) {
    chomp;
    &$whatToDo($_) foreach (split qr{["',;]*\s+["']*});
  }
}

# how to use super hyper parser
{
  local $\=$/;
  parseMysaksFile DATA, sub {print @_};
}

__END__
Pavel Jindra "Zuzana", "Michal", Tomas
Rosta Ondrej "Robert", "Radim", Honza Pavel
Martin Sofie "Daniel", "Dominik", Erik Klement Vladislav Vladimir
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é.
26.10.2005 15:24 mysak
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Diky VSEM za rady a tipy, ale ja to chtel jednoduse prohnat pres awk do mysql takhle:

gawk '{ print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' soubor.txt | mysql -u root -D test

Ale vadi tam ty uvozovky a carky. Takze by bylo lepsi, kdybych ten soubor.txt nejprve prohnal pres to tr -d a pak udelal tento insert pomoci awk?
27.10.2005 11:00 mlz | skóre: 12 | blog: Obcas
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
V pripade, ze oddelovac muze byt cokoliv po mezere (tedy ne carka) budete vkladat (Michal Tomas|Radim Honza|Dominik Erik) -- predpokladam, ze to je to, co chcete-- bude fungovat tr -d '",' < soubor.txt| awk '{ print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' | mysql -u root -D test
A TAKE
awk '{ gsub(/[",]/, "");
print "insert into test(prvni,druhy) values(\"" $4 "\",\"" $5 "\");" }' | mysql -u root -D test
Stejne si myslim, ze lepsi reseni je pouzit nejaky jazyk a ty data tam pchat pomoci neho - Osetreni transakci
Namisto tr muze byt cokoliv, co to umi (ja nemam rad sed a nahrazuji ho awk :-))
Takhle vagne definovana vstupni data je strasidelnost (Data neoddelena mezerou/Pipou, promenlivy pocet poli ve vstupu
26.10.2005 10:18 diverman | skóre: 32 | blog: život s tučňáčkem
Rozbalit Rozbalit vše Re: awk- jak se zbavit nepotrebneho znaku
Zbavení se uvozovek, data čte ze stdin:
sed 's/\"//d'
deb http://ftp.cz.debian.org/debian jessie main contrib non-free

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.