Kezdőlap › Fórumok › Programozás › ismetlodo sorok torlese
- This topic has 14 hozzászólás, 4 résztvevő, and was last updated 15 years, 7 months telt el by
Goosfrabaa.
-
SzerzőBejegyzés
-
2010-04-26-17:51 #1889611
Sziasztok,
tudna valaki egy elegans szkiptet adni, ami egy file-ban kitorli az ismetlodo sorokat (azaz ami eggynel tobbszor szerepel)?
Altalanosan kellene torolni azokat a sorokat, amik ismetlodnek, tehat nem tudok megadni semmilyen pattern-t, hogy mit is tartalmaz. Lehetseges ez, ha igen, hogyan?
(Uzsolt: koszi a multkorit:)
2010-04-27-08:29 #2199658A ketszer ismetlodo sorokra letezik egy sed parancs :
sed 'x; G; /^(.*)n1$/ d; g; p; d'Letezik-e ennek altalanositasa >2 sor eseten?
2010-04-27-11:22 #2199659A uniq paranccsal ismerkedj meg 😉
$ echo -e "AlmanAlmanSzilvanAlma"
Alma
Alma
Szilva
Alma
$ echo -e "AlmanAlmanSzilvanAlma" |uniq
Alma
Szilva
Alma
2010-04-27-14:13 #2199660Szerintem nem volt feltétel, hogy az ismétlődéseknek egymás utáni sorokban kell lenniük. Ekkor pedig nem lesz jo az uniq..
Persze lehetne előtte rendeztetni, csak nem biztos, hogy a felhasználó szeretné, ha az állománya rendezetté válna.2010-04-27-14:29 #2199661Valóban, ha a uniq csak ugy tud torolni, hogy az ismetlodo soroknak egymas utan kell lenniuk, akkor nem lesz jo. Viszont lehet, hogy rendezni kene a dolgot…ezen meg gondolkodom. Amugy, ha rendezni kellene, akkor hogyan erdemes?
2010-04-27-14:39 #2199662Az első, a topikindító (ktibi) általi hozzászólásban levő sed nem működik, ha nem egymás után vannak az ismétlődő sorok, ezért úgy gondolom, hogy még ha nem is rendezett a fájl, de az ismétlődő sorok egymás után vannak.
Ha nem lehet rendezni, és úgy akarja, akkor szerintem érdemesebb valami komolyabb eszközzel nekimenni, mint bash-szkriptelgetni (perl, python, c, vagy valami hasonló).2010-04-27-15:33 #2199663Többször futtatod.
Ha nem törölt semmit, akkor végzett.2010-04-27-15:50 #2199664Az a helyzet, hogy a sed script mukodik, hiszen az egymas utan ismetlodo sorok kozul torli az egyiket. De az en adatsoromban nem csak es kizarolag egymas utan vannak ismetlodo sorok, hanem ossze-vissza elszortan. Tehat ezek rendezese tok jo lenne, ekkor valoszinuleg mukodne is a uniq…
Már csak rendezni kellene akkor az adatsort… Tudsz erre egy par soros valami hint-et adni? Az adatsorom „%.32fn” alaku szamokbol all.2010-04-27-16:11 #2199665sort
?2010-04-27-19:36 #2199666Ha lehet rendezni, akkor a legegyszerűbb szerintem a
sort -u ./adatfajlparancs.
Ez rendez és rögtön ki is dobja az azonos sorokat. -
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.

legutóbbi hsz