Portál AbcLinuxu, 1. června 2025 23:09


Dotaz: Kompresní filtr sed

Roman Horník avatar 6.2.2016 21:22 Roman Horník | skóre: 8 | Seč
Kompresní filtr sed
Přečteno: 249×
Odpovědět | Admin
Nazdar lidi, řeším zapeklitej problém, mám soubor obsahující čísla (0-255) oddělený mezerou (v příkladech nahrazených pomlčkou), řádky zakončený linefeedem (0x0A), třeba takhle:

12-47-128-0-56-56-56-174-\n
42-7-184-20-20-20-20-20-\n


No a rád bych vykonal jakousi RLE kompresi, kde z po sobě jdoucích čísel stejný hodnoty zůstalo jen to první z nich, ostatní byly vymazány, ale mezery za nima zůstaly zachovány, čili takhle:

12-47-128-0-56---174-\n
42-7-184-20-----\n


Někdo nějakej nápad? Předem dík.
I'm only wearing black until they make something darker | Debian-Linux.cz | Debian fórum

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 6.2.2016 21:46 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Kompresní filtr sed
Odpovědět | | Sbalit | Link | Blokovat | Admin
echo -e "12-47-128-0-56-56-56-174-\n42-7-184-20-20-20-20-20-" | rev | sed -re "s/([0-9]+)-\1/-/g"| rev
Roman Horník avatar 6.2.2016 21:55 Roman Horník | skóre: 8 | Seč
Rozbalit Rozbalit vše Re: Kompresní filtr sed
Johó! Díky moc!
I'm only wearing black until they make something darker | Debian-Linux.cz | Debian fórum

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.