Next: , Previous: uniq, Up: Examples   [Contents][Index]


4.15 ÆþÎϤνÅÊ£¤·¤Æ¤¤¤ë¹Ô¤ò½ÐÎϤ¹¤ë¡¥

°Ê²¼¤Î¥¹¥¯¥ê¥×¥È¤Ï¡¤uniq -d¤Î¤è¤¦¤Ë½ÅÊ£¤·¤Æ¤¤¤ë¹Ô¤À¤±¤ò½ÐÎϤ·¤Þ ¤¹¡¥

#!/usr/bin/sed -nf

$b
N
/^\(.*\)\n\1$/ {
    # Print the first of the duplicated lines
    s/.*\n//
    p
    # Loop until we get a different line
    :b
    $b
    N
    /^\(.*\)\n\1$/ {
        s/.*\n//
        bb
    }
}
# The last line cannot be followed by duplicates
$b
# Found a different one.  Leave it alone in the pattern space
# and go back to the top, hunting its duplicates
D