User:Skullara: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Skullara (talk | contribs)
No edit summary
Skullara (talk | contribs)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Quest 16 - Osta elevant ära:'''
Teha programm, mis käivitamisel paku kasutajale "osta elevant ära" ja ootaks kasutaja sisendit. Ükskõik mida kasutaja sisestab ütleb skript "Seda ütlevad kõik, aga osta elevant ära" ja nii lõpmatuseni.
'''Lahendus:'''
'''Lahendus:'''
<source lang="bash">
<source lang="bash">
Line 11: Line 15:
do
do
     read TEKST
     read TEKST
     echo "Seda ütlevad kõik aga osta elevant ära"
     echo "Seda ütlevad kõik, aga osta elevant ära"
done
done
</source>
'''Quest 13 - kas kasutaja kuulub gruppi?:'''
Teha skript user_in_group.sh mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi.
Tagastab 0, kui kuulub ja 1 kui ei kuulu.user_in_group.sh <kasutaja> <grupp>
'''Lahendus 1 - Bash:'''
<source lang="bash">
#!/bin/bash
#Autor: Silver Kullarand; skullara@itcollage.ee
#Rühm A21
#Versioon: 1.0
#Skript, mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi.
#Sisestus : user_in_group.sh <kasutaja> <grupp>
#Etteantud parameetrite kontroll
if [ $# -ne 2 ]; then
    echo "Käivita skript $(basename $0) parameetritega : <kasutaja> <grupp>"
    exit 1
fi
#Defineerin muutujad
    KASUTAJA=$1
    GRUPP=$2
#Kasutaja ja grupi võrdlemine
if [ $(groups $KASUTAJA | cut -f2 -d":" | grep $GRUPP -w -c) = 1 ]; then
    exit 0   
#Ei kuulu etteantud gruppi
else
    exit 1
fi
</source>
'''Lahendus 2 - Python:'''
<source lang="python">
#!/usr/bin/python
# -*- coding: utf-8 -*-
#Autor: Silver Kullarand; skullara@itcollage.ee
#Rühm A21
#Versioon: 1.0
#Skript, mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi.
#Sisestus : user_in_group.py <kasutaja> <grupp>
import sys
import commands
#Etteantud parameetrite kontroll
if len(sys.argv[1:]) != 2:
    print "Käivita skript %s parameetritega : <kasutaja> <grupp>" % (sys.argv[0])
    sys.exit(1)
#Kasutaja ja grupi võrdlemine
str = commands.getoutput("groups %s" % (sys.argv[1])).split(" ")
if sys.argv[2] in str[2:]:
# kuulub gruppi
    sys.exit(0)
else:
# ei kuulu gruppi
    sys.exit(1)
</source>
</source>

Latest revision as of 10:44, 15 May 2011

Quest 16 - Osta elevant ära:

Teha programm, mis käivitamisel paku kasutajale "osta elevant ära" ja ootaks kasutaja sisendit. Ükskõik mida kasutaja sisestab ütleb skript "Seda ütlevad kõik, aga osta elevant ära" ja nii lõpmatuseni.

Lahendus:

#!/bin/bash
#Autor: Silver Kullarand; skullara@itcollage.ee
#Rühm A21
#Versioon: 1.0
#Osta elevant ära

echo "Osta elevant ära"
while :
do
    read TEKST
    echo "Seda ütlevad kõik, aga osta elevant ära"
done

Quest 13 - kas kasutaja kuulub gruppi?:

Teha skript user_in_group.sh mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi. Tagastab 0, kui kuulub ja 1 kui ei kuulu.user_in_group.sh <kasutaja> <grupp>

Lahendus 1 - Bash:

#!/bin/bash
#Autor: Silver Kullarand; skullara@itcollage.ee
#Rühm A21
#Versioon: 1.0
#Skript, mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi.
#Sisestus : user_in_group.sh <kasutaja> <grupp> 

#Etteantud parameetrite kontroll
if [ $# -ne 2 ]; then
    echo "Käivita skript $(basename $0) parameetritega : <kasutaja> <grupp>"
    exit 1
fi
#Defineerin muutujad
    KASUTAJA=$1
    GRUPP=$2
#Kasutaja ja grupi võrdlemine
if [ $(groups $KASUTAJA | cut -f2 -d":" | grep $GRUPP -w -c) = 1 ]; then
    exit 0    
#Ei kuulu etteantud gruppi
else
    exit 1
fi

Lahendus 2 - Python:

#!/usr/bin/python
# -*- coding: utf-8 -*-
#Autor: Silver Kullarand; skullara@itcollage.ee
#Rühm A21
#Versioon: 1.0
#Skript, mis kontrollib, kas etteantud kasutaja kuulub etteantud gruppi.
#Sisestus : user_in_group.py <kasutaja> <grupp> 

import sys
import commands

#Etteantud parameetrite kontroll
if len(sys.argv[1:]) != 2:
    print "Käivita skript %s parameetritega : <kasutaja> <grupp>" % (sys.argv[0])
    sys.exit(1)

#Kasutaja ja grupi võrdlemine
str = commands.getoutput("groups %s" % (sys.argv[1])).split(" ")
if sys.argv[2] in str[2:]:
# kuulub gruppi
    sys.exit(0)
else:
# ei kuulu gruppi
    sys.exit(1)