User:Krvask

From ICO wiki
Jump to navigationJump to search

Bash quest

#!/bin/bash
#Autor: Kristjan Vask
#Skript mis käib läbi PATH muutuja sisu ja kuvab kasutajale kataloogid mida pole
#Skript lisab ka ühe PATH muutuja kasutaja .profile faili
#Versioon 0.4

test=true
echo "Otsin PATH muutujast katalooge mida pole olemas"
#käime läbi PATH muutuja:
for i in $( echo $PATH | tr ':' '\n' ); do
    if [ -d $i ]
then
    echo > /dev/null
else 
    echo $i  - "Kataloogi pole"
    test=false
fi
done
if $test
then
    echo "Kõik kataloogid PATH muutujas on olemas"
else
    echo > /dev/null
fi
#lisame uue PATH muutuja, lisamiseks eemaldada kommentaari märgid kahelt järgmiselt realt.
#echo PATH=$PATH:/data/tere >> /home/$USER/.profile
#source /home/$USER/.profile

Powershell kodutöö

#Skript küsib kas teha lokaalne või Active Directory kasutaja
#teeb vastavasse kohta kasutajad võttes kasutajanimed failist kasutaja.txt ja paroolid failist pw.txt
#versioon 0.2 - 28.05.2011
#autor: Kristjan Vask A21

$i=0
$liik = Read-Host "Kas teeme Active Directory või lokaalse kasutaja ? Trüki ad või lokaalne"
if ($liik -eq "ad"){
        Foreach ($line in get-content kasutaja.txt)
{
echo "Teen AD kasutaja: $line"
create-ADaccount($line)
$i=$i+1
} 
     }
elseif ($liik -eq "lokaalne"){
        Foreach ($line in get-content kasutaja.txt)
{
echo "Teen lokaalse kasutaja: $line"
create-account($line)
$i=$i+1
} 
     }
else {
echo "Peab trükkima ad või lokaalne" 
exit
}
#lokaalse kasutaja loomise funktsioon
function create-account
([string]$accountName = "ajutine") {
$pw = (get-content pw.txt)[$i]
$hostname = hostname
$comp = [adsi] "WinNT://$hostname"
$user = $comp.Create("User", $accountName)
$user.SetPassword($pw)
$user.SetInfo()
}

#AD kasutaja loomise funktsioon
function create-ADaccount{
$pw = (get-content pw.txt)[$i]
New-ADUser –Name $line –Enabled $true -AccountPassword (ConvertTo-SecureString $pw -AsPlainText -force)
}

Python kodutöö

#!/usr/bin/python
# -*- coding: utf-8 -*-
#skript kontrollib kas Pythoni PATH muutujas olevad kaustad on olemas
#küsib kas printida kaustad mis on olemas või mida pole ning seejärel prindib vastavad kaustad
#autor Kristjan Vask A21
#versioon 0.2

import os
import sys

#Küsib kumba varianti kuvada
vastus = raw_input("Kas prindin kaustad mis on olemas või mida pole? Trüki on või pole\n")
#kaustad mida pole:
if vastus == "pole":
    print "Kuvan pythoni PATH muutujas olevad kaustad mida pole olemas:\n"
    for path in sys.path:
        if os.path.exists(path)==False:
            print path,"-", "Sellist kausta pole olemas"
#kaustad mis on olemas:
elif vastus == "on":
    print "Olemas on sellised kaustad:\n"
    for path in sys.path:
        if os.path.exists(path)==True:
            print path
#kui sisendiks tuleb miskit miskit muud:
else:
    print "Kaustade kuvamiseks peab trükkima on või pole"

Isikukoodi korrektsuse kontroll pythonis

#!/usr/bin/python
# -*- coding: utf-8 -*-
#autor: Kristjan Vask A21
#skript kontrollib id koodi õigsust
from datetime import datetime, date, time
import sys
d = {}
try:
    input_filename= sys.argv[1]
except IndexError:
    print "Kasutamiseks: %s <sisendfail>" % sys.argv[0]
    exit(255)

filename = input_filename

test=12

for line in open(filename):
    arv = len(line)
    if arv==test:
        if line.startswith("3"):
            x="mees"
        elif line.startswith("5"):
            x="mees"
        elif line.startswith("4"):
            x="naine"
        elif line.startswith("6"):
            x="naine"
        else:
            x= "vale algusnr"
        try:
            y= datetime.strptime(line[1:7], "%y%m%d").strftime("%d.%m.%Y")
        except ValueError:
            y="vale kuupäeva formaat"
        c = map(int,line.strip())
        w1 = [1,2,3,4,5,6,7,8,9,1]
        w2 = [3,4,5,6,7,8,9,1,2,3]
        s1 = sum(map(lambda x,y: x*y, c[:-1], w1))%11
        s2 = (sum(map(lambda x,y: x*y, c[:-1], w2))%11)%10
        k= s1 == c[-1] or s1 == 10 and s2 == c[-1]
        if (x=="mees" or x=="naine") and y!="vale kuupäeva formaat" and k==True:
            print line.strip(),"-",y,"-",x
    else:
        print line.strip(),"-", "isikukoodi pikkus pole õige"