blob: 72d093c38e7301595f40c4c84614aa23897fb273 [file] [log] [blame]
rsc2b85f702005-01-11 20:58:13 +00001#!/usr/local/plan9/bin/rc
rsc9bbe4592005-01-14 05:55:09 +00002
3. 9.rc
4
rsc3ff92132005-01-04 22:11:58 +00005# Usage: lookman key ...
6# prints out the names of all manual pages containing all the given keywords
rsc2c500ad2005-01-11 17:49:03 +00007index=$PLAN9/man/lookman.index
rsc3ff92132005-01-04 22:11:58 +00008t1=/tmp/look1.$pid
9t2=/tmp/look2.$pid
10fn sigexit sigint sighup sigterm{
11 rm -f $t1 $t2
12 exit 1
13}
14*=`{echo $*|tr A-Z a-z|tr -dc 'a-z0-9_ \012'} # fold case, delete funny chars
15if(~ $#* 0){
rsc45cb54e2006-04-06 15:58:01 +000016 echo usage: lookman key ... >[1=2]
rsc3ff92132005-01-04 22:11:58 +000017 exit 1
18}
19look $1 $index|sed 's/.* //'|sort -u >$t1
20shift
21for(i in $*){
22 look $i $index|sed 's/.* //'|sort -u|
23 awk 'BEGIN {
24 while (getline < "'$t1'" > 0) table[$0] = 1;
25 }
26 { if (table[$0]) print }
27 ' > $t2
28 mv $t2 $t1
29}
rsc2c500ad2005-01-11 17:49:03 +000030sort $t1 | sed 's;/.*/man/man[0-9]*/;;
rsc3ff92132005-01-04 22:11:58 +000031 s;(.*)\.(.*);man \2 \1 # \1(\2);'
32rm -f $t1 $t2
33exit 0