Archive

Archive for the ‘Bash’ Category

Fibonacci number: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89

January 21st, 2008 karlosp No comments
CODE:
  1. #!/bin/bash
  2. if [ $# -ne 1 ]
  3. then
  4.     echo 'Uporaba: sh fibo n'
  5.     exit
  6. fi
  7.  
  8. y0=0
  9. y1=1
  10. stevec=2
  11. if [ $# -eq 1 -a $1 -gt 2 ]
  12. then
  13. echo $y0
  14. echo $y1
  15.     while [ $stevec -le $1 ]
  16.     do
  17.         let "y3=$y0+$y1"
  18.         echo $y3
  19.  
  20.         y0=$y1
  21.         y1=$y3
  22.         let "stevec=$stevec+1"
  23.     done
  24. fi

Categories: 3 letnik, Bash, Fax, SPO Tags:

Preveri geslo (min 8 znakov, vsaj ena števka in vsaj en [@#$%])

January 15th, 2008 karlosp No comments
CODE:
  1. #!/bin/sh
  2. if [ $# -ne 1 ]
  3. then
  4. echo napaka pri uporabi programa
  5. exit
  6. fi
  7.  
  8. dolzina=`echo -n $1 | wc -c`
  9.  
  10. if [ $dolzina -lt 8 ]
  11. then
  12. echo Prekratko geslo
  13. exit
  14. fi
  15.  
  16. if [ `echo $1 | grep [0-9]` ]
  17. then
  18.     if [ `echo $1 | grep [@#$%]` ]
  19.     then
  20.     echo geslo OK
  21.     fi
  22. fi

Categories: 3 letnik, Bash, Fax, SPO Tags:

Izračun fakultete (!)

January 15th, 2008 karlosp No comments
CODE:
  1. #!/bin/bash
  2.  
  3. if [ $# -eq 0 ]
  4. then
  5. echo Vnesi stevilo
  6. exit
  7. fi
  8.  
  9. if [ $1 -eq 1 ]
  10. then
  11.     echo 1
  12.     exit
  13. else
  14. i=2
  15. tmp=1
  16. while true
  17. do
  18.     let tmp=$i*$tmp
  19.     if [ $i -eq $1 ]
  20.         then
  21.         echo konec: $tmp
  22.         exit
  23.     fi
  24.     let i=$i+1
  25. done
  26. fi

Categories: 3 letnik, Bash, Fax, SPO Tags: , ,

Bash: Kill Proces

January 9th, 2008 karlosp No comments
CODE:
  1. Napišite program v lupini, ki vsakih pet minut preveri,
  2. če se na sistemu pojavi nek proces in ga poskusa ubiti.
  3. Ime procesa podamo v ukazni vrstici.
  4.  
  5. Primer uporabe:
  6.  
  7. $ ubij netscape
  8.  
  9. bo na računalniku vsakih pet minut preveril,
  10. če teče kak proces z imenom netscape, ter ga bo poskušal ubiti. Navodilo: pri tem obvezno uporabite ukaz kill.

CODE:
  1. #!/bin/sh
  2. #############################
  3. #   SPO zagovori vaj      #
  4. #   Naloga 2            #
  5. #   Avtor: Karlos      #
  6. #   Datum: 10-Nov-07      #
  7. #############################
  8. # uporaba: ./ubij.sh imeProcesa #
  9. if [ $# -lt 1 ]
  10. then
  11.     echo Napaka, manjka ime procesa
  12.     exit
  13. elif [ $# -eq 1 ]
  14. then
  15.     proces=$1
  16.     while(true)
  17.     do
  18.         pid=`ps -e | grep $1 | gawk '// {print $1}'`
  19.         #pid=`pidof $1`
  20.         kill $pid 2> /dev/null
  21.         sleep 10
  22.     done
  23. else
  24.     echo Napaka!
  25.     echo $*
  26. fi

Categories: 3 letnik, Bash, Fax, SPO Tags:

Napišite program v lupini, ki beleži dnevnik dosegljivosti računalnikov.

January 9th, 2008 karlosp No comments
CODE:
  1. Napišite program v lupini, ki beleži dnevnik dosegljivosti računalnikov.
  2.  Kot argument mu podamo datoteko, ki vsebuje spisek računalnikov,
  3. program pa naj vsakih pet minut preveri, če so dosegljivi.
  4. V neko datoteko (dnevnik) naj zapisuje, če kateri od računalnikov ni dosegljiv,
  5. njegovo ime in čas, ko ni bil dosegljiv.
  6.  
  7. Primer uporabe:
  8.  
  9. $ preverjaj spisek_racunalnikov.txt
  10.  
  11. izpisuje v dnevnik:
  12.  
  13. io.fri.uni-lj.si ni dosegljiv ob 15:31
  14. io.fri.uni-lj.si ni dosegljiv ob 15:36
  15. io.fri.uni-lj.si ni dosegljiv ob 15:41
  16. verbena.fe.uni-lj.si ni dosegljiv ob 15:41

CODE:
  1. #!/bin/sh
  2. #############################
  3. #   SPO zagovori vaj      #
  4. #   Naloga 5            #
  5. #   Avtor: Karlos      #
  6. #   Datum: 5-Dec-07            #
  7. #############################
  8. # Uporaba: ./naloga5 datotekaRacunalnikov.txt #
  9.  
  10. if test $# -ne 1
  11. then
  12.     echo "Uporaba: ./naloga5 datotekaRacunalnikov.txt"
  13.     exit
  14. fi
  15.  
  16. while true
  17. do
  18.     for i in `cat $1`
  19.     do
  20.     if(ping -c 1 $i 1> /dev/null)
  21.     then
  22.     echo -n ""
  23.         #echo $i" je dosegljiv ob " `date +%H:%M`
  24.         #echo $i" je dosegljiv ob " `date +%H:%M`>> dosegljivost.txt       
  25.  
  26.     else
  27.         echo $i" je nedosegljiv ob " `date +%H:%M`
  28.         echo $i" je nedosegljiv ob " `date +%H:%M`>> dosegljivost.txt
  29.     fi
  30.     done
  31. echo '###########################################'
  32. sleep 5
  33. done

Categories: 3 letnik, Bash, Fax, SPO Tags:

SPO zagovori vaj

January 9th, 2008 karlosp No comments
CODE:
  1. Preučite jezik za pregledovanje tekstnih datotek awk (oz. gawk - GNU awk)
  2. ter v njem napišite program, ki za vhod vzame neko HTML datoteko ter na standardni
  3.  izhod izpiše seznam vseh povezav in slik, ki so vključene v datoteko
  4.  (z <a HREF...> ali <img SRC .../>).
  5.  
  6. Primer uporabe:
  7.  
  8. $ gawk -f preveri.awk lalala.html
  9. slika lala.gif
  10. povezava http://www.fri.uni-lj.si
  11. povezava http://www.ijs.si/slo
  12. slika slike/kuku.jpg </a>

CODE:
  1. #############################
  2. #   SPO zagovori vaj      #
  3. #   Naloga 7            #
  4. #   Avtor: Karlos      #
  5. #   Datum: 10-Nov-07      #
  6. #############################
  7. # uporaba: gawk -f preveri.awk index.html #
  8. #awk <search pattern> {<program actions>}#
  9.  
  10. /(src)|(href)/{  #najde vrstice
  11. for(i = 1; i <= NF; i++)    # NF = number of fields
  12. if($i ~ "[\"|'][^\"|']*[\"|']"){    # if field contains src || href
  13.     split($i,tabela,"'")
  14.     if(tabela[2] != "")
  15.         print tabela[2]
  16.  
  17.     split($i,tabela,"\"")
  18.     if(tabela[2] != "")
  19.         print tabela[2]
  20.     #print $i
  21. }
  22.  
  23. }

Categories: 3 letnik, Bash, Fax, SPO Tags: , ,

Drugi test

November 4th, 2007 karlosp No comments

Malo testiram Scribe fire

In malo popravljam

Categories: Bash, Ideo page, Malo mešano Tags:
101899 pages viewed, 154 today
53336 visits, 89 today
FireStats icon Powered by FireStats