#!/bin/rc switch($#*){ case [012] echo usage: mkextract [-u] field n file... >[1=2] exit 1 } switch($1){ case -u flag=$1; shift case * flag='' } field=$1 n=$2 shift 2 fn select { awk ' BEGIN { doprint=0 } /^$/ { next } /^#/ { next } doprint && /^[^ ]/ { doprint=0 } doprint { print $'^$n^' } $1 ~ "^'^$field^'$" { doprint=1; next } ' $* } switch($flag){ case -u select $* | sort -u case * select $* }