Gå til innhold

Få BASH-script til å hente inn options


Anbefalte innlegg

Videoannonse
Annonse

Litt dårlig forklaring, ja. Jeg har et script som sjekker om en haug med servere er på nett. De spyr ut informasjon i klartekst skilt med linebreak, som dette:

server1 er oppe
server2 er oppe
server3 er nede!!
server4 er oppe

 

Men i tillegg henter jeg dette inn på en webside jeg har, og da legger jeg det i et pre-element. Men når jeg kjører det inn på websiden vil jeg ha ut html-elementer, og derfor vil jeg starte scriptet med script.sh --html.

 

Det er da den --html (evt. -html) jeg vil finne om er satt.

Lenke til kommentar

Her er det, hvis noen var nysgjerrig... Ikke akkurat kernelhacking, men det funker jo. Forbedringer?

#!/bin/bash

host=( server1 server2 server3 server4 server5 server6 server7 )

if [ $# -eq 0 ]
then
 ListPrefix=("Sjekker maskiner")
 ListPostfix=("Ferdig sjekket")
 OppePrefix=(" ")
 NedePrefix=(" ")
 OppePostfix=(" er oppe")
 NedePostfix=(" er nede!!")

elif [ $1 = "--html" ]
then
 ListPrefix=("<ul class=''>")
 ListPostfix=("</ul>")
 OppePrefix=(" <li class='oppe'>")
 OppePostfix=(" er oppe</li>")
 NedePrefix=(" <li class='nede'>")
 NedePostfix=(" er nede</li>")

elif [ $1 = "--help" ]
then
 echo "Bruk --html for HTML-output"
 exit 0

else
 echo "bruk --help for hjelp"
 exit 1
fi


echo $ListPrefix
i=0
while [[ $i -le 6 ]]
do
 ping -c 1 ${host[$i]} > /dev/null 2>&1 && echo "$OppePrefix${host[$i]}$OppePostfix" || echo "$NedePrefix${host[$i]}$NedePostfix"
 sleep 1
 let "i +=1"
done
echo $ListPostfix
exit 0

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...