fjonfjongfjong Skrevet 19. oktober 2012 Del Skrevet 19. oktober 2012 Hei! Jeg har klart å sope sammen et script som fungerer uten loop, men jeg vil ha det kjørende helt til jeg stopper det. Derfor la jeg inn en sleep timer og forsøkte å loope det, men jeg får det ikke til. Er det noen kloke hoder som kan hjelpe meg? Slik ser det ut: # Mailoppsett SUBJECT="mailsubjecther" EMAILID="mailher" # # Noder som skal pinges HOSTS=" 127.0.0.1 " # # SLAPPEAV=60 # # #Antall ping som skal sendes, må få reply på samtlige for at node skal rapporteres som oppe COUNT=3 fnSTART() { for myHost in $HOSTS do count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }') if [ $count -eq 3 ]; then echo "Host : $myHost is up (ping successfull) at $(date)" | mail -s "$SUBJECT" $EMAILID; sed "/$myHost/d" pong.sh > tempfile.txt; mv tempfile.txt pong.sh fi } sleep $SLAPPEAV fnSTART done Lenke til kommentar
mobile999 Skrevet 19. oktober 2012 Del Skrevet 19. oktober 2012 (endret) Du må angi vilket shell som brukes i første linje! Eksempel: #!/bin/bash for i in $( ls ); do echo item: $i done http://tldp.org/HOWT...ro-HOWTO-7.html Endret 19. oktober 2012 av mobile999 Lenke til kommentar
mobile999 Skrevet 19. oktober 2012 Del Skrevet 19. oktober 2012 Du må ha følgende i en evig while loop: sleep $SLAPPEAV fnSTART Lenke til kommentar
asicman Skrevet 31. oktober 2012 Del Skrevet 31. oktober 2012 (endret) Jeg har klart å sope sammen et script som fungerer uten loop, men jeg vil ha det kjørende helt til jeg stopper det. Du sier ingenting om hvordan du ønsker å stoppe det. Men hvis du f.eks vil stoppe det med control-c kan du gjøre noe som f.eks: #!/bin/sh trap cleanup INT cleanup() { echo "caught signal ..." exit 1 } while true do echo "hello, it's now $(date)" sleep 3 done EDIT: du kan kalle fnSTART funksjonen din der jeg har echo hello... Endret 31. oktober 2012 av asicman Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå