Skriptimisvahendid (8x)
Kell 8.30 hakkasid tunnid Markoga. Töö ülesandeks oli teha skript. Nimelt:
07.02.2017 Logifailist otsimine, regulaaravaldised, käsurealt parameetri lugemine skriptis
Ülesanne koosneb mitmest osast. Kuna teil võib tekkida probleeme mitme asja korraga tegemisel, siis soovitan asjad tükeldada nii nagu on juhendis. Lõpp tulemus on see kõik ühes skripti failis. Jah, kogu asja saaks ka ilma skriptita teha, kuid inimene on laisk ning lihtsam on näha natuke vaeva ning teha peaaegu universaalne skript. Selleks et te ummikusse ei jookseks kuidas peaksite seda tegema.
Punktid 1 ja 2 on selleks et saaksite aru mis seal failis on olemas ja kuidas. Punkt 3 on puhas otsing logifailist. Seda on linuxis tihti tarvis teha. Antud juhul on toodud ka mõned näited millega eksperimenteerida, kui ise ei suuda midagi välja mõelda. Oluline on siin alati kuupäev. Punkt 4 on teada saamiseks, kuidas käsurealt saab parameetri kätte ja seda skriptis kasutada. Punkt 5 on eelneva õpitu järgi skripti kokku kirjutamine.
1. Lae alla logi fail
2. Uuri/vaata logifaili sisu. Teadmiseks, korrektsel päeval on seal 1440 rida.
3. Uuri linuxi käske catja grepkäsureal ilma skripti tegemata
3.1. Leia logi failist mingi kindla kuupäevaga read. Harjutamiseks milline iganes kuupäev mis logis leidub :)
3.2. Leia logifailist lisaks eelnevale ka kindla -ISO või -ss võtme järgi olevad read. Üks kahest on kohustuslik
3.2.1. Näiteks kõik read mis on kuupäevaga 01.01.2017 ning -ISO 600
3.2.2. Näitkes kõik read mis on kuupäevaga 01.01.2017 ning -ss 1000000
4. Kui eelnev selge, kuidas asi töötab kirjuta skript mis loeb skripti nime järgi olevaid parameetreid. Näiteks, on skripti nimi myscript.sh
4.1. Kui käsureale kirjutada ./myscript.sh minuvotia sinuasib siis
4.1.1 Skript peab nüüd väljastama ainult minuvotia ning sinuasib
5. Kui kogu eelnev asi tundub selge olema, siis kirjuta kokku skript, kus etteantud failist otsida ühe või kahe parameetri abil. Mõned näited kasutades skripti nime myscript.sh mis võiksid töötada, kui neid õigesti kirjutada
5.1. ./myscript.sh failinimi kuupaev - väljastab kõik antud kuupäevaga read
5.2. ./myscript.sh failinimi kuupaev 'ISO 600' - väljastab kõik antud kuupäevaga ISO 600 read
5.3. ./myscript.sh failinimi kuupaev ss 60000 - väljastab kõik antud kuupäeva read kus on ss 60000
5.4. ./myscript.sh - teatab failinimi puudu
5.5. ./myscript.sh failinimi - teatab et midagi pole otsida või et kuupäev ja/või parameeter on puudu
5.6. ./myscript.sh failinimi '' "ISO 800" - väljastab kõik read kus on ISO 800
NB! Punktide 5.2 ja 5.3 ISO ja SS read ei pruugi nii toimida nagu esimese hooga arvate. Lubatud on kasutada ainult kolme parameetrit. Failinimi, Kuupäev ja ISO või SS koos numbriga. Kui kasutate esimest mõtet siis, ISO või SS numbrit ei tule/ei arvestata! Konksuga "tegemine" :)
Täna õppisin tegema skripti, mis otsib tekstifailist välja andmed, mida tahad leida.
No comments:
Post a Comment