next | next | up | down | Inhalt | Uebungen | Complete | Kommentar

all, section 7.2.

7.2.  man

Typischerweise sind die Quellen der Manualseiten öffentlich und müssen mit nroff formatiert werden. Diese Version von man geht davon aus, daß die Seiten bereits formatiert sind:

 1      #!/bin/sh
 2      PATH=/usr/ucb:/bin:/usr/bin
 3      
 4      section=? exit=0
 5      
 6      files=
 7      while [ $# -gt 0 ]
 8      do    case $1
 9          in [1-8])    section=$1
10          ;; *)        found=
11                  for dir in /usr/local/gnu/man       \
12                             /usr/local/man /usr/man
13                  do    f=`echo $dir/cat$section/$1.*`
14                      case $f
15                      in *\*)
16                      ;; *)    found="$found $f"
17                      esac
18                  done
19                  if [ -z "$found" ]
20                  then   
21                      echo >&2 "`basename $0`: $1 not found"
22                      exit=1
23                  else    files="$files $found"
24                  fi
25          esac
26          shift
27      done
28      
29      if [ "$files" ]
30      then    cat $files
31      else    echo >&2 "usage: `basename $0` [section] page ..."
32          exit=1
33      fi
34      exit $exit

Die Formatierung übernimmt normalerweise das Berkeley-Kommando catman das ungefähr folgendermaßen funktioniert:

 1      #!/bin/sh
 2      PATH=/usr/ucb:/bin:/usr/bin
 3      
 4      for dir in /usr/local/gnu/man /usr/local/man /usr/man
 5      do    ( cd $dir
 6            for i in 1 2 3 4 5 6 7 8 n l
 7            do    if [ -d man$i ]
 8                  then    [ -d cat$i ] || mkdir cat$i
 9                  j=`ls -t cat$i | sed 1q`
10                  ( cd man$i
11                    case $j
12                    in '') j=`ls`
13                    ;; *)  j=`find . -newer ../cat$i/$j -print`
14                    esac
15                    for j in $j
16                    do    nroff -man -u -h $j |
17                      uniq |
18                      sed 's/^    //' > ../cat$i/$j
19                    done
20                  )
21              fi
22            done
23          )
24      done


back | next | up | down | Inhalt | Uebungen | Complete | Kommentar


Created by unroff & hp-tools. © by Hans-Peter Bischof. All Rights Reserved (1997).

Last modified 03/July/97