Portál AbcLinuxu, 10. května 2025 09:57

Dotaz: Utilita SED

31.3.2009 19:35 Roman Štemberk
Utilita SED
Přečteno: 449×
Odpovědět | Admin
Utilitou sed bych potreboval vytvorit ze souboru rodcislo.txt(obsah dole) nový soubor vystup.txt, který bude mít následující formát:
Jmeno Prijmeni DD. MM. RRRR
Soubor rodcislo.txt obsahuje seznam rodných čísel a jmen osob ve formátu:
rrmmdd/nnn...:Jmeno Prijmen
885113/111:Jana Mala
770427/4444:Josef Novak
826208/9999:Marta Velka
901130/12345:Karel Straka
Diky moc vsem
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.3.2009 20:58 NN
Rozbalit Rozbalit vše Re: Utilita SED
Odpovědět | | Sbalit | Link | Blokovat | Admin

To je jak uloha z vejsky z hodin Unixu..

bude se ti to hodit,

man sed

NN

31.3.2009 20:59 NN
Rozbalit Rozbalit vše Re: Utilita SED

Prijdu domu a napisu to..

NN

31.3.2009 23:01 Tomáš Heger (geckon) | skóre: 62 | Praha/Valašsko
Rozbalit Rozbalit vše Re: Utilita SED
Evidentně ses trefil;-) Když už, tak doporučuji se domluvit a položit jeden dotaz za celý kruh ;-)
31.3.2009 23:20 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: Utilita SED
Hmmm, já jsem taky doufal, že jim to správci zatrhnou a bude se to alespoň řešit v jednom vláknu. Teď už je pozdě...
I am always ready to learn although I do not always like to be taught. (W. Churchill)
1.4.2009 02:12 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
Rozbalit Rozbalit vše Re: Utilita SED
Evidentně ses trefil;-) Když už, tak doporučuji se domluvit a položit jeden dotaz za celý kruh ;-)
Aha, díky, tak já jsem nakopnutí dal tam. Ale vlastní řešení úkolu bych raději již ponechal na ctěném studentstvu.
31.3.2009 21:12 NN
Rozbalit Rozbalit vše Re: Utilita SED
Odpovědět | | Sbalit | Link | Blokovat | Admin

To je prehazovani slov se sedem, nejdriv nactes radek v puvodnim formatu

a pak ho prerovnas.

Neco jako:

sed s/\$1\ \$2\.\  \$3\.\ \$4\ /$4$3/:\ $1 $2/ soubor.txt\

NN

31.3.2009 21:33 nikdo
Rozbalit Rozbalit vše Re: Utilita SED
Odpovědět | | Sbalit | Link | Blokovat | Admin

 sed 's/\([0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)\/[0-9]*:\([^ ]*\)[ ]\([^ ]*\)/\4 \5 \3.\2.19\1/'

31.3.2009 22:39 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
Rozbalit Rozbalit vše Re: Utilita SED
Odpovědět | | Sbalit | Link | Blokovat | Admin
Není to sice v sedu neřešitelné, ale není to tak triviální, jak navrhují kolegové výše... Rodné číslo je mrcha v jedné věci: do měsíce také kóduje pohlaví, což prosté přerovnání řádku neřeší. Takže buď kombinace "hold space" a transformace (y) nebo podmíněných skoků, ale hlavní nevýhoda sedu, když se to začíná komplikovat je, že i když to jde napsat, docela špatně se to čte, zejména náhodnému kolemjdoucímu. Jak se to začíná komplikovat, awk bývá snazším řešením téhož.
http://prirucka.ujc.cas.cz/?ref=785&id=790.

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.