Bash: Duplikált sorok szűrése
A minap szükségem volt arra, hogy egy szövegfájlból kiszűrjem az ismétlődő sorokat. Ezt Linux shellből könnyen meg lehet oldani
Két Linux segédprogram kell csak ehhez:
- sort – ezzel lehet rendezni a sorokat a fájlban
- uniq – ezzel a programmal pedig kiszűrni az ismétlődéseket
A legegyszerűbb ha a sort kimenetét egy pipeba (cső) küldjök, ami a uniq bemenete lesz, majd az egészet beleirányítjuk az ujfajl.txt nevű fájlba. Ha a végén elhagyjuk a > {UJFAJL} részt, akkor a konzolon jelenik meg a kimenet.
sort {FAJL} | uniq > {UJFAJL}
Ez az eredeti fájl (teszt.txt):
Régen
internet
bejegyzés
Régen
kezdők
internet
Mint látható a Régen és az internet szó szerepel kétszer.
Kiadom a parancsot:
sort teszt.txt | uniq
Az eredmény pedig:
bejegyzés
internet
kezdők
Régen
Lehetséges az is, hogy az ismétlődő elemeket teljesen kihagyjuk, ekkor az uniq parancsnak ezt az -u opcióval lehet megmondani:
sort teszt.txt | uniq -u
És ekkor az eredmény:
bejegyzés
kezdők
1 thought on “Bash: Duplikált sorok szűrése”
Vélemény, hozzászólás?
Olvass tovább
sort -u teszt.txt