Successivo: , Precedente: , Su: Esempi   [Contenuti][Indice]


4.15 Stampare le righe duplicate

Questo script stampa solo le righe duplicate, come ‘uniq -d’.

#!/usr/bin/sed -nf

$b
N
/^\(.*\)\n\1$/ {
    # Stampa la prima delle righe duplicate
    s/.*\n//
    p
    # Esegue il ciclo finché non trova una riga diversa
    :b
    $b
    N
    /^\(.*\)\n\1$/ {
        s/.*\n//
        bb
    }
}
# L'ultima riga non può essere seguita da duplicati
$b
# Trovata una riga diversa, la deposita nel pattern space
# e torna all'inizio, alla ricerca dei suoi duplicati
D