Bash quests 2013: Difference between revisions
Line 26: | Line 26: | ||
NB: tagastamine pole ekraanile väljastamine ja argumendi käsurealt ette andmine ei tähenda selle küsimist kasutajalt, näiteks read abil peale skirpi käivitamist. Vaata õppematerjali. | NB: tagastamine pole ekraanile väljastamine ja argumendi käsurealt ette andmine ei tähenda selle küsimist kasutajalt, näiteks read abil peale skirpi käivitamist. Vaata õppematerjali. | ||
=Quest 2 - Leiab kas masinas on etteantud pordid lahti või mitte (Quest | =Quest 2 - Leiab kas masinas on etteantud pordid lahti või mitte (Quest lukus)= | ||
Teha skript, mis saab argumendina failinime ja kontrollitava masina IP aadressi, ning loeb failist portide nimekirja. | Teha skript, mis saab argumendina failinime ja kontrollitava masina IP aadressi, ning loeb failist portide nimekirja. | ||
Line 49: | Line 49: | ||
Meelis Kurnikov AK31: http://enos.itcollege.ee/~mekurnik/skriptimiskeeled/ports.py | Meelis Kurnikov AK31: http://enos.itcollege.ee/~mekurnik/skriptimiskeeled/ports.py | ||
Priit Lume AK51: https://wiki.itcollege.ee/index.php/User:Plume | Priit Lume AK51: https://wiki.itcollege.ee/index.php/User:Plume | ||
Lahendus bashis. Andres Elliku A21: https://wiki.itcollege.ee/index.php/User:Aelliku | Lahendus bashis. Andres Elliku A21: https://wiki.itcollege.ee/index.php/User:Aelliku | ||
''' Quest lukus ''' [[User:Mernits|Mernits]] 16:04, 12 February 2013 (EET) | |||
=Quest 3 Võib teha, nii bashis, kui pythonis annab 5p kas arvestusse või kodutööle= | =Quest 3 Võib teha, nii bashis, kui pythonis annab 5p kas arvestusse või kodutööle= |
Revision as of 16:04, 12 February 2013
Sissejuhatus
Bash quests annab võimaluse teha bash skriptimise kodutööd ka neile, kellel teemat pole. Skript tuleb panna Tudengi enda wiki lehele. Punktid saab esimene, kes antud questi täies mahus valmis sai. Kui lahendus pole rahuldav saab punktid järgmine OK lahenduse looja. Kui quest valmis, siis pane link questi juurde (nagu näites) Queste tuleb pidevalt juurde.
Quest 0 - Näide
Teha skript, mis ei tee midagi asjalikku, kuid väljasta sõna BÖÖÖ
Lahendus: User:Mernits
Quest lukus (tehtud) Mernits 15:04, 24 January 2013 (EET)
Quest 1 - PATH (Quest üleval alates 24.01.2013)
Tee skript, mis lisab käsurealt etteantud kataloogi kasutaja PATH muutujasse, kui kataloog eksisteerib.
Tagastab 0 juhul kui kõik õnnestus.
Tagastab 1 kui kataloogi ei leitud.
Tagastab 2 kui argumentide arv ei klapi.
NB: tagastamine pole ekraanile väljastamine ja argumendi käsurealt ette andmine ei tähenda selle küsimist kasutajalt, näiteks read abil peale skirpi käivitamist. Vaata õppematerjali.
Quest 2 - Leiab kas masinas on etteantud pordid lahti või mitte (Quest lukus)
Teha skript, mis saab argumendina failinime ja kontrollitava masina IP aadressi, ning loeb failist portide nimekirja.
Skript tagastab 0, kui kõik nimekirjas olevad pordid on lahti ja teised pordid kinni
Skript tagastab 1, kui vajalikud pordid on lahti, kuid ka midagi muud on lahti
Skript tagastab 2, kui 1-n vajalikest portidest on kinni
Skript tagastab 3, kui argumentide arv ei sobi
Skript tagastab 4, kui IP aadress pole sobiv
Kontrollib porte vahemikus 1-10000
NB, see sobib ka pythoni kodutööks või arvestusena (kui saadad unikaalse lahenduse enne arvestuse päeva)
Meelis Kurnikov AK31: http://enos.itcollege.ee/~mekurnik/skriptimiskeeled/ports.py
Priit Lume AK51: https://wiki.itcollege.ee/index.php/User:Plume
Lahendus bashis. Andres Elliku A21: https://wiki.itcollege.ee/index.php/User:Aelliku
Quest lukus Mernits 16:04, 12 February 2013 (EET)
Quest 3 Võib teha, nii bashis, kui pythonis annab 5p kas arvestusse või kodutööle
Iga erinev lahendus annab 5p. Esimesena laekunud ja õige lahendus annab 10p.
Loo skript, mis kontrollib kas kasutajal, kes skripti käivitas on õigus kirjutada etteantud kataloogi või mitte.
Kataloogi nimi antakse ette käsurealt.
Skript tagastab 0, kui õigus on olemas.
Skript tagastab 1, kui õigust pole või kataloogi pole (näiteks on tegu failiga)
Quest lahti alates 16:04, 31 January 2013 (EET)
Quest 4 - Võib teha, nii bashis, kui pythonis annab 5p kas arvestusse või kodutööle
Esimene õigesti töötav lahendus saab 10p
Luua skript, mis kontrollib, kas etteantud kasutaja kodukataloogis on faile või katalooge, mis ei kuulu kasutajale.
Leitud failid kirjutatakse väljundisse.
Skript tagastab 0, kui täitmine õnnestus
Skript tagastab 1, kui kasutajat pole
Skript tagastab 2, kui kasutajal pole kodukausta
Muude vigade korral tagastab 3.
Quest lahti alates 16:04, 31 January 2013 (EET)