home *** CD-ROM | disk | FTP | other *** search
/ Chip 1994 February / CHIP0294.ISO / digital / test / linux / bootdisk / rootdisk.18 / usr / lib / LST / SelAuswahl < prev    next >
Encoding:
Text File  |  1994-06-12  |  2.4 KB  |  98 lines

  1. #!/bin/sh
  2. export PATH=/LSTLIB:$PATH
  3. TEXTCONSTANTS=/LSTLIB/libLSTstrings
  4. LSTTMP=/LSTLIB/tmp
  5. TMPDIR=$LSTTMP
  6. DATABASE=/LSTLIB/DATABASE
  7.  
  8. . $TEXTCONSTANTS
  9.  
  10. # This should'n be static here ...
  11.  
  12. SERIE=$1
  13.  
  14. if [ ! -f $TMPDIR/$SERIE.sum ]; then
  15.     dialog --infobox \
  16. "\n\
  17. Berechnung des Platzbedarfs der Serie >>$SERIE<< \n\
  18. \n\
  19.               Bitte warten Sie..." 8 60 
  20.     
  21.     GetData $SERIE
  22. fi
  23. summin="`cat $TMPDIR/$SERIE.sum | fgrep "$SERIE.min" | cut -d':' -f 2`"
  24. sumrec="`cat $TMPDIR/$SERIE.sum | fgrep "$SERIE.rec" | cut -d':' -f 2`"
  25. sumall="`cat $TMPDIR/$SERIE.sum | fgrep "$SERIE.all" | cut -d':' -f 2`"
  26.  
  27. while [ 1 ]; do
  28. dialog --title "Auswahl innerhalb der Serie >>$SERIE<<" --menu \
  29. "\n\
  30. WΣhlen Sie die Art der Vorselektierung innerhalb der Serie $SERIE.\n\
  31. Platzbedarf: minimum=$summin KB empfohlen=$sumrec KB alles=$sumall KB\n\
  32. Mit f k÷nnen Sie zuerst den verbleibenden Plattenplatz prⁿfen.\n" 15 75 5 \
  33. "1" "$MLSELMINASK" \
  34. "2" "$MLSELRECASK" \
  35. "3" "$MLSELMAX" \
  36. "f" "Informationen ⁿber noch verfⁿgbaren Plattenplatz ausgeben" \
  37. "q" "Serie doch nicht selektieren" 2> $TMPDIR/$SERIE.art
  38. if [ $? = 1 -o $? = 255 -o "`cat $TMPDIR/$SERIE.art`" = "q" ]; then
  39.     rm -f $TMPDIR/$SERIE.art
  40.     echo "Abbruch !"
  41.     exit
  42. fi
  43. if [ "`cat $TMPDIR/$SERIE.art`" != "f" ]; then
  44.     break
  45. fi
  46.  
  47. dialog --title "Hochrechnung des Platzbedarfs" --infobox \
  48. "\n\
  49. Der voraussichtliche Platzbedarf der bisher \n\
  50. selektierten Pakete wird ermittelt. \n\
  51. \n\
  52.       Bitte warten Sie ..." 12 60
  53.  
  54. # Infos ⁿber freien Plattenplatz sammel und anzeigen...
  55. # Selektierte Pakete ermitteln
  56. rm -f $TMPDIR/willbe.sel
  57. for i in $TMPDIR/*.sel ; do
  58.     cat $i | sed 's/\"/ /g' >> $TMPDIR/willbe.sel
  59. done
  60.  
  61. # Summe der Selektionen bilden
  62. rm -f $TMPDIR/willbe.sum
  63. for i in `cat $TMPDIR/willbe.sel` ; do
  64.     fgrep ":$i:" $DATABASE | cut -d':' -f 5 >> $TMPDIR/willbe.sum
  65. done
  66.  
  67. sumpre=0
  68. sumpre=`DoSum < $TMPDIR/willbe.sum`
  69.  
  70. rm -f $TMPDIR/willbe.sum
  71. rm -f $TMPDIR/willbe.sel
  72.  
  73. dialog --title "FestplattenkapazitΣt und voraussichtlicher Platzbedarf" --msgbox "`df` \n Voraussichtlicher Platzbedarf der selektierten Pakete: `expr $sumpre / 1024` KB" 20 75
  74.  
  75. done
  76.  
  77. MINIMUM=
  78. RECOMMENDED=
  79. ALL=
  80.  
  81. case `cat $TMPDIR/$SERIE.art` in
  82.     q )
  83.         # Hier muesste man die Serie wieder aus SeriesList loeschen
  84.         exit 0;;
  85.     1 ) 
  86.         MINIMUM=-minimum;;
  87.     2 ) 
  88.         MINIMUM=-minimum
  89.         RECOMMENDED=-recommended;;
  90.     3 )
  91.         ALL=-all;;
  92.     * )
  93.         echo "Panic ! ungⁿltiger Auswahl !"
  94.         exit 1
  95. esac
  96.  
  97. SelPkgs $ALL $MINIMUM $RECOMMENDED -instsrc $INSTSRC -database $DATABASE -fullindex $FULLINDEX -series $SERIE
  98.