#!/usr/local/plan9/bin/rc . 9.rc # Usage: lookman key ... # prints out the names of all manual pages containing all the given keywords index=$PLAN9/man/lookman.index t1=/tmp/look1.$pid t2=/tmp/look2.$pid fn sigexit sigint sighup sigterm{ rm -f $t1 $t2 exit 1 } *=`{echo $*|tr A-Z a-z|tr -dc 'a-z0-9_ \012'} # fold case, delete funny chars if(~ $#* 0){ echo usage: lookman key ... >[1=2] exit 1 } look $1 $index|sed 's/.* //'|sort -u >$t1 shift for(i in $*){ look $i $index|sed 's/.* //'|sort -u| awk 'BEGIN { while (getline < "'$t1'" > 0) table[$0] = 1; } { if (table[$0]) print } ' > $t2 mv $t2 $t1 } sort $t1 | sed 's;/.*/man/man[0-9]*/;; s;(.*)\.(.*);man \2 \1 # \1(\2);' rm -f $t1 $t2 exit 0