filtrare de liste in shell
Un snippet interesant peste care am dat astazi:
sieve() {
read x || return
echo $x
sieve | grep -v "^$x$"
}
Functia se apeleaza recursiv si filtreaza liniile identice fara sa faca sort. Dezavantajul e ca consuma multa memorie, fiind pornite N shelluri suplimentare si N grep-uri, asa ca nu e viabila pentru liste lungi. Probabil e scrisa de cineva care stie LISP, ca s-ar citi ceva gen "returneaza CAR si scoate CAR din CDR, dupa ce-l treci prin aceeasi procedura". Oricum, multumirile mele autorului anonim, este foarte utila pentru ce am nevoie