The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/tools/lguest/extract

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #! /bin/sh
    2 
    3 set -e
    4 
    5 PREFIX=$1
    6 shift
    7 
    8 trap 'rm -r $TMPDIR' 0
    9 TMPDIR=`mktemp -d`
   10 
   11 exec 3>/dev/null
   12 for f; do
   13     while IFS="
   14 " read -r LINE; do
   15         case "$LINE" in
   16             *$PREFIX:[0-9]*:\**)
   17                 NUM=`echo "$LINE" | sed "s/.*$PREFIX:\([0-9]*\).*/\1/"`
   18                 if [ -f $TMPDIR/$NUM ]; then
   19                     echo "$TMPDIR/$NUM already exits prior to $f"
   20                     exit 1
   21                 fi
   22                 exec 3>>$TMPDIR/$NUM
   23                 echo $f | sed 's,\.\./,,g' > $TMPDIR/.$NUM
   24                 /bin/echo "$LINE" | sed -e "s/$PREFIX:[0-9]*//" -e "s/:\*/*/" >&3
   25                 ;;
   26             *$PREFIX:[0-9]*)
   27                 NUM=`echo "$LINE" | sed "s/.*$PREFIX:\([0-9]*\).*/\1/"`
   28                 if [ -f $TMPDIR/$NUM ]; then
   29                     echo "$TMPDIR/$NUM already exits prior to $f"
   30                     exit 1
   31                 fi
   32                 exec 3>>$TMPDIR/$NUM
   33                 echo $f | sed 's,\.\./,,g' > $TMPDIR/.$NUM
   34                 /bin/echo "$LINE" | sed "s/$PREFIX:[0-9]*//" >&3
   35                 ;;
   36             *:\**)
   37                 /bin/echo "$LINE" | sed -e "s/:\*/*/" -e "s,/\*\*/,," >&3
   38                 echo >&3
   39                 exec 3>/dev/null
   40                 ;;
   41             *)
   42                 /bin/echo "$LINE" >&3
   43                 ;;
   44         esac
   45     done < $f
   46     echo >&3
   47     exec 3>/dev/null
   48 done
   49 
   50 LASTFILE=""
   51 for f in $TMPDIR/*; do
   52     if [ "$LASTFILE" != $(cat $TMPDIR/.$(basename $f) ) ]; then
   53         LASTFILE=$(cat $TMPDIR/.$(basename $f) )
   54         echo "[ $LASTFILE ]"
   55     fi
   56     cat $f
   57 done
   58 

Cache object: 14a7ac818460b954c1dc9fc859caa4fd


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.