Habe noch was vergessen...

Am 2004-09-09 12:20:51, schrieb Michelle Konzack:

Du willst ja sicher das Script stoppen, wenn Du Brennst...

Das mache ich mit einem 'touch $HOME/.symlinker/nosymlink' 
Danach die datei einfach wieder l�schen.

Desweiteren, kannste probleme bekommen, wenn das script l�ngere 
Zeit nicht in betrieb war und mit der laufzeit �BER die 10 Minuten 
hinauskommt. Deswegen mit ner PID arbeiten...

  ____ ( '/home/michelle/bin/symlinker' ) ______________________________
 /
|  #!/bin/bash
|  
|  DOWNLOAD_VERZEICHNIS=/home/autodownloader/downloads
|  BRENNER_VERZEICHNIS=/home/orlando/brennerdir
|  CACHE_DATEI=$HOME/.symlinker/brennercache
|  
|  if [ ! -d $HOME/.symlinker ] ; then mkdir $HOME/.symlinker ; fi
|  
|  # Script nur ausf�hren, wenn die Datei nicht da ist
|  if [ ! -f $HOME/.symlinker/nosymlink ]
|  
|  PID=$$
|  if [ ! -f $HOME/.symlinker/symlinker.pid ] ; then
|      if [ `find $HOME/.symlinker/ -name symlinker.pid -cmin 30 ` ] ; then
|          ps -e |grep `cat $HOME/.symlinker/symlinker.pid` >/dev/null 2>&1
|          if [ $? == "1" ] ; then 
|              rm $HOME/.symlinker/symlinker.pid
|              echo $PID > $HOME/.symlinker/symlinker.pid
|          fi
|      else
|          exit 0
|      fi
|  else
|      echo $PID > $HOME/.symlinker/symlinker.pid
|  fi
|  
|  # Dateien suchen, die nicht �lter als 30 minuten sind
|  for DATEI in `find $DOWNLOAD_VERZEICHNIS -type f -cmin -30` ; do
|  
|  # �berpr�fen ob $DATEI leer ist und beenden
|  if [ "$DATEI" == "" ] ; then exit 0 ; fi
|  
|  # Die md5 Summe erstellen
|      MD5=`md5sum $DATEI`
|  
|  # Wir wollen nur die md5sum ohne Dateinamen haben
|      SUM=`echo $MD5 |cut -f1 -d" "`
|  
|  # �berpr�fen, ob die Datei im Cache ist
|      grep "$SUM" $CACHE_DATEI /dev/null 2>&1
| 
|  # Ermitteln des Exit-Statuses
|      ES=$?
|      if [ ! $ES ] ; then
|  # Wenn der Exit-Status nit wahr ist, stripen wir das download 
|  # Verzeicnis vom dem Ergebnis von 'find'
|          MKD=`echo $DATEI |sed s,$DOWNLOAD_VERZEICHNIS/,,`
|  
|  # Hier erstellen wir das verzeichnis zum Symlink
|          mkdirhier $BRENNER_VERZEICHNIS/$MKD
|  
|  # Nun wird der symlink angelgt
|          ln -s $DATEI $BRENNER_VERZEICHNIS/$MKD
|  
|  # Gleichzeitig speichern wie die gesymlikte Datei im Cache ab
|          echo "$MD5" >CACHE_DATEI
|      fi
|  done
|  fi
|  rm $HOME/.symlinker/symlinker.pid
|  
\_______________________________________________________________________


Greetings
Michelle

-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/ 
Michelle Konzack   Apt. 917                  ICQ #328449886
                   50, rue de Soultz         MSM LinuxMichi
0033/3/88452356    67100 Strasbourg/France   IRC #Debian (irc.icq.com)

Attachment: signature.pgp
Description: Digital signature

Antwort per Email an