Blob


1 #!/usr/local/plan9/bin/rc
2 # Usage: lookman key ...
3 # prints out the names of all manual pages containing all the given keywords
4 index=$PLAN9/man/lookman.index
5 t1=/tmp/look1.$pid
6 t2=/tmp/look2.$pid
7 fn sigexit sigint sighup sigterm{
8 rm -f $t1 $t2
9 exit 1
10 }
11 *=`{echo $*|tr A-Z a-z|tr -dc 'a-z0-9_ \012'} # fold case, delete funny chars
12 if(~ $#* 0){
13 echo Usage: lookman key ... >/fd/2
14 exit 1
15 }
16 look $1 $index|sed 's/.* //'|sort -u >$t1
17 shift
18 for(i in $*){
19 look $i $index|sed 's/.* //'|sort -u|
20 awk 'BEGIN {
21 while (getline < "'$t1'" > 0) table[$0] = 1;
22 }
23 { if (table[$0]) print }
24 ' > $t2
25 mv $t2 $t1
26 }
27 sort $t1 | sed 's;/.*/man/man[0-9]*/;;
28 s;(.*)\.(.*);man \2 \1 # \1(\2);'
29 rm -f $t1 $t2
30 exit 0