User:Iambos: Difference between revisions
From ICO wiki
Jump to navigationJump to search
No edit summary |
No edit summary |
||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''Quest 18''' | |||
<source lang="bash"> | <source lang="bash"> | ||
#!/bin/bash | #!/bin/bash | ||
Line 6: | Line 7: | ||
#Skript kopeerib viimati kasutatud failid erinevatesse kaustadesse. | #Skript kopeerib viimati kasutatud failid erinevatesse kaustadesse. | ||
# | #Oiguste kontroll | ||
if [ "$UID" -ne "0" ] | if [ "$UID" -ne "0" ] | ||
then | then | ||
Line 13: | Line 14: | ||
fi | fi | ||
# | #Sisestatakse kasutaja | ||
echo "Sisesta kasutaja" | echo "Sisesta kasutaja" | ||
read KASUTAJA | read KASUTAJA | ||
Line 41: | Line 42: | ||
#Otsingu kriteeriumid. Skriptis on eeldatud, et kasutaja kodukataloog | #Otsingu kriteeriumid. Skriptis on eeldatud, et kasutaja kodukataloog | ||
#asub home kataloogis. Otsitakse koiki faile valjaarvatud peidetud | #asub home kataloogis. Otsitakse koiki faile valjaarvatud peidetud failid. | ||
# | #Faile otsitakse viimase muutmise aja jargi. | ||
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime -2) | otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime -2) | ||
Line 51: | Line 52: | ||
else | else | ||
# | #Kopeeritakse leitud failid | ||
$(cp -rfp $otsi /home/$KASUTAJA/kakspaeva ) | $(cp -rfp $otsi /home/$KASUTAJA/kakspaeva ) | ||
echo "Leitud failid kopeeriti kausta kakspaeva, " | echo "Leitud failid kopeeriti kausta kakspaeva, " | ||
fi | fi | ||
# | #Valjastatakse kopeeritud failide arv | ||
failidearv=$(ls /home/$KASUTAJA/kakspaeva | wc -l) | failidearv=$(ls /home/$KASUTAJA/kakspaeva | wc -l) | ||
echo "Kokku kopeeriti $failidearv faili." | echo "Kokku kopeeriti $failidearv faili." | ||
Line 155: | Line 156: | ||
skriptiasukoht=$(readlink -f $0) | skriptiasukoht=$(readlink -f $0) | ||
sleep 172800 && $skriptiasukoht | sleep 172800 && $skriptiasukoht | ||
</source> | |||
'''Powershelli kodutöö''' | |||
Skript näitab ühendatud kettaid, kuvab partitsioonid ja loogilised kettad. Näitab ketta suuruseid, kasutatud ja vaba ketta ruumi. | |||
<source lang="powershell"> | |||
#Autor Ivar Ambos | |||
#Rühm A22 | |||
#Versioon: 0.1 | |||
Write-Host "--Ühendatud kettad.--" -foregroundcolor White -backgroundcolor Red | |||
#loetakse vajalik info muutujasse | |||
$ketas = Get-WmiObject Win32_Diskdrive | |||
#Kaidakse muutuja labi ja prinditakse tulemus | |||
foreach ($diskdrive in $ketas) { | |||
Write-Host "*********************" -foregroundcolor red | |||
#Ketta indeks | |||
Write-Host "Ketas:" $diskdrive.Index | |||
#Leitakse ketta suurus, teisendatakse gigabaidiks ja valjastatakse kolm koma kohta | |||
Write-Host "Kõvaketta suurus:" ($diskdrive.Size/1GB).ToString("0.000") "GB" | |||
#prinditakse ketta partitisioonid | |||
foreach($diskpartition in $diskdrive.getrelated("win32_diskpartition")){ | |||
Write-Host "Partitsioon:" $diskpartition.NAME | |||
Write-Host "Suurus:" ($diskpartition.Size/1GB).ToString("0.000") "GB" | |||
#prinditakse loogiliste ketaste informatsioon | |||
foreach($LOGICALDRIVE in $diskpartition.getrelated("win32_logicaldisk")){ | |||
write-host "Loogiline ketas:" $LOGICALDRIVE.name | |||
write-host "Loogilise ketta nimi:" $LOGICALDRIVE.volumename | |||
write-host "Suurus:" ($logicaldrive.size/1GB).ToString("0.000") "GB" | |||
write-host "Vaba ruum:" ($logicaldrive.FreeSpace/1GB).ToString("0.000") "GB" | |||
write-host "Kasutatud:" ((($logicaldrive.size - $logicaldrive.freespace)/1GB).ToString("0.000") ) "GB" | |||
} | |||
} | |||
} | |||
</source> | |||
'''Pythoni kodutöö''' | |||
Skript teeb uue kasutaja ja parooli. | |||
<source lang="python"> | |||
#!/usr/bin/python | |||
# -*- coding: utf-8 -*- | |||
#Autor Ivar Ambos A22 | |||
#Versioon 0.1 | |||
#Uue kasutaja ja parooli lisamine. Antud skript ei kontrolli kasutaja olemasolu. Kodukataloog tehakse /home/ kataloogi. | |||
#Skripti on testitud Ubuntu 10.10 versiooniga. | |||
import sys | |||
import os | |||
if len(sys.argv) == 3: | |||
kasutaja = (sys.argv[1]) | |||
parool = (sys.argv[2]) | |||
#Õiguste kontroll. | |||
if os.getuid() != 0: | |||
print "Käivita skript juur õigustes!" | |||
else: | |||
#Tehakse kodukataloog ja määratakse kasutajale parool. | |||
os.system ("useradd -m -d /home/"+kasutaja+" "+kasutaja+" ") | |||
os.system ("echo "+kasutaja+":"+parool+"| chpasswd ") | |||
print "Loodi kasutaja "+kasutaja+" " | |||
else: | |||
print "Kasuta skripti järgmiselt: lisa_kasutaja.py <kasutaja> <parool>" | |||
</source> | </source> |
Latest revision as of 22:24, 21 May 2011
Quest 18
#!/bin/bash
#Autor Ivar Ambos
#Rühm A22
#Versioon: 0.2
#Skript kopeerib viimati kasutatud failid erinevatesse kaustadesse.
#Oiguste kontroll
if [ "$UID" -ne "0" ]
then
echo "Kaivita see skript root oigustes"
exit 1
fi
#Sisestatakse kasutaja
echo "Sisesta kasutaja"
read KASUTAJA
#Kasutaja kontroll
kontroll=$(grep "$KASUTAJA" /etc/passwd |cut -d ":" -f1 )
if [ "$kontroll" = "$KASUTAJA" ]; then
echo "Sisestatud kasutaja $KASUTAJA on olemas"
else
echo "Sellist kasutajat $KASUTAJA ei ole, sisesta uus kasutaja"
exit 1
fi
#Kataloogi kontroll
if [ -d /home/$KASUTAJA/kakspaeva ]; then
echo "kaust kakspaeva on juba olemas"
#Kustutatakse kaust koos sisuga, kasutajale oeldakse, et kustutatakse kausta sisu.
$( rm -r /home/$KASUTAJA/kakspaeva )
echo "Kustutan kaustast failid"
mkdir /home/$KASUTAJA/kakspaeva
else
echo "Loon kausta kakspaeva"
mkdir /home/$KASUTAJA/kakspaeva
fi
echo "Otsin faile mida on viimati muudetud vahem kui 2 paeva tagasi..."
#Otsingu kriteeriumid. Skriptis on eeldatud, et kasutaja kodukataloog
#asub home kataloogis. Otsitakse koiki faile valjaarvatud peidetud failid.
#Faile otsitakse viimase muutmise aja jargi.
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime -2)
#kontrollitakse otsingu tulemust
if [ ! -n "$otsi" ]; then
echo "Otsingu kriteeriumitele vastavaid faile ei leitud"
else
#Kopeeritakse leitud failid
$(cp -rfp $otsi /home/$KASUTAJA/kakspaeva )
echo "Leitud failid kopeeriti kausta kakspaeva, "
fi
#Valjastatakse kopeeritud failide arv
failidearv=$(ls /home/$KASUTAJA/kakspaeva | wc -l)
echo "Kokku kopeeriti $failidearv faili."
if [ -d /home/$KASUTAJA/seitsepaeva ]; then
echo "kaust seitsepaeva on juba olemas"
$( rm -r /home/$KASUTAJA/seitsepaeva )
echo "Kustutan kaustast failid"
mkdir /home/$KASUTAJA/seitsepaeva
else
echo "Loon kausta seitsepaeva"
mkdir /home/$KASUTAJA/seitsepaeva
fi
echo "Otsin faile mida on viimati muudetud 2 - 7 paeva tagasi..."
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime 2 -mtime -7)
if [ ! -n "$otsi" ]; then
echo "Otsingu kriteeriumitele vastavaid faile ei leitud"
else
$(cp -rfp $otsi /home/$KASUTAJA/seitsepaeva )
echo "Leitud failid kopeeriti kausta seitsepaeva"
fi
failidearv=$(ls /home/$KASUTAJA/seitsepaeva | wc -l)
echo "Kokku kopeeriti $failidearv faili."
if [ -d /home/$KASUTAJA/neliteistpaeva ]; then
echo "kaust neliteistpaeva on juba olemas"
$( rm -r /home/$KASUTAJA/neliteistpaeva )
echo "Kustutan kaustast failid"
mkdir /home/$KASUTAJA/neliteistpaeva
else
echo "Loon kausta neliteistpaeva"
mkdir /home/$KASUTAJA/neliteistpaeva
fi
echo "Otsin faile mida on viimati muudetud 8 - 14 paeva tagasi..."
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime 8 -mtime -14)
if [ ! -n "$otsi" ]; then
echo "Otsingu kriteeriumitele vastavaid faile ei leitud"
else
$(cp -rfp $otsi /home/$KASUTAJA/neliteistpaeva )
echo "Leitud failid kopeeriti kausta neliteistpaeva"
fi
failidearv=$(ls /home/$KASUTAJA/neliteistpaeva | wc -l)
echo "Kokku kopeeriti $failidearv faili."
if [ -d /home/$KASUTAJA/viisteistpaeva ]; then
echo "kaust viisteistpaeva on juba olemas"
$( rm -r /home/$KASUTAJA/viisteistpaeva )
echo "Kustutan kaustast failid"
mkdir /home/$KASUTAJA/viisteistpaeva
else
echo "Loon kausta viisteistpaeva"
mkdir /home/$KASUTAJA/viisteistpaeva
fi
echo "Otsin faile mida on viimati muudetud 15 - 29 paeva tagasi..."
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime 15 -mtime -29)
if [ ! -n "$otsi" ]; then
echo "Otsingu kriteeriumitele vastavaid faile ei leitud"
else
$(cp -rfp $otsi /home/$KASUTAJA/viisteistpaeva )
echo "Leitud failid kopeeriti kausta viisteistpaeva"
fi
failidearv=$(ls /home/$KASUTAJA/viisteistpaeva | wc -l)
echo "Kokku kopeeriti $failidearv faili."
if [ -d /home/$KASUTAJA/vanemad ]; then
echo "kaust vanemad on juba olemas"
$( rm -r /home/$KASUTAJA/vanemad )
echo "Kustutan kaustast failid"
mkdir /home/$KASUTAJA/vanemad
else
echo "Loon kausta vanemad"
mkdir /home/$KASUTAJA/vanemad
fi
echo "Otsin faile mida on viimati muudetud 30 voi rohkem paeva tagasi..."
otsi=$(find /home/$KASUTAJA -type f \( ! -regex ".*/\..*" \) -mtime +30)
if [ ! -n "$otsi" ]; then
echo "Otsingu kriteeriumitele vastavaid faile ei leitud"
else
$(cp -rfp $otsi /home/$KASUTAJA/vanemad )
echo "Leitud failid kopeeriti kausta vanemad"
fi
failidearv=$(ls /home/$KASUTAJA/vanemad | wc -l)
echo "Kokku kopeeriti $failidearv faili."
echo "Failid on kopeeritud ja sorteeritud nende muutmise aja jargi"
#skript läheb sleepi ja hakkab uuesti tööle 48 tunni pärast
skriptiasukoht=$(readlink -f $0)
sleep 172800 && $skriptiasukoht
Powershelli kodutöö
Skript näitab ühendatud kettaid, kuvab partitsioonid ja loogilised kettad. Näitab ketta suuruseid, kasutatud ja vaba ketta ruumi.
#Autor Ivar Ambos
#Rühm A22
#Versioon: 0.1
Write-Host "--Ühendatud kettad.--" -foregroundcolor White -backgroundcolor Red
#loetakse vajalik info muutujasse
$ketas = Get-WmiObject Win32_Diskdrive
#Kaidakse muutuja labi ja prinditakse tulemus
foreach ($diskdrive in $ketas) {
Write-Host "*********************" -foregroundcolor red
#Ketta indeks
Write-Host "Ketas:" $diskdrive.Index
#Leitakse ketta suurus, teisendatakse gigabaidiks ja valjastatakse kolm koma kohta
Write-Host "Kõvaketta suurus:" ($diskdrive.Size/1GB).ToString("0.000") "GB"
#prinditakse ketta partitisioonid
foreach($diskpartition in $diskdrive.getrelated("win32_diskpartition")){
Write-Host "Partitsioon:" $diskpartition.NAME
Write-Host "Suurus:" ($diskpartition.Size/1GB).ToString("0.000") "GB"
#prinditakse loogiliste ketaste informatsioon
foreach($LOGICALDRIVE in $diskpartition.getrelated("win32_logicaldisk")){
write-host "Loogiline ketas:" $LOGICALDRIVE.name
write-host "Loogilise ketta nimi:" $LOGICALDRIVE.volumename
write-host "Suurus:" ($logicaldrive.size/1GB).ToString("0.000") "GB"
write-host "Vaba ruum:" ($logicaldrive.FreeSpace/1GB).ToString("0.000") "GB"
write-host "Kasutatud:" ((($logicaldrive.size - $logicaldrive.freespace)/1GB).ToString("0.000") ) "GB"
}
}
}
Pythoni kodutöö
Skript teeb uue kasutaja ja parooli.
#!/usr/bin/python
# -*- coding: utf-8 -*-
#Autor Ivar Ambos A22
#Versioon 0.1
#Uue kasutaja ja parooli lisamine. Antud skript ei kontrolli kasutaja olemasolu. Kodukataloog tehakse /home/ kataloogi.
#Skripti on testitud Ubuntu 10.10 versiooniga.
import sys
import os
if len(sys.argv) == 3:
kasutaja = (sys.argv[1])
parool = (sys.argv[2])
#Õiguste kontroll.
if os.getuid() != 0:
print "Käivita skript juur õigustes!"
else:
#Tehakse kodukataloog ja määratakse kasutajale parool.
os.system ("useradd -m -d /home/"+kasutaja+" "+kasutaja+" ")
os.system ("echo "+kasutaja+":"+parool+"| chpasswd ")
print "Loodi kasutaja "+kasutaja+" "
else:
print "Kasuta skripti järgmiselt: lisa_kasutaja.py <kasutaja> <parool>"