User:Apuvi
From ICO wiki
Bash
#!/bin/bash
#Autor: Arina Püvi, A21, apuvi@itcollege.ee
#Versioon 0.2
#
# Mysql andmebaasi põhikonfigureerimine
# Skript saab:
# 1. Uut kasutajat luua
# 2. Andmebaasi varukoopiat teha
# 3. Paigalda andmebaasi .sql failist
# 4. Arvestuseks teen Mysql parooli reset'i
function help_menu {
echo "Vali, mis tahad teha:"
echo "1. Andmebaasi varukoopiat teha"
echo "2. Paigalda andmebaasi .sql failist"
echo "3. Muuta kasutajanimi ja salasõna"
echo "4. Parooli reset"
}
if [ ! -f "/etc/init.d/mysql" ]; then
apt-get install mysql-server
apt-get install mysql-client
fi
echo -n "Kirjuta mysql kasutajanimi: "
read SQLUSER
echo -n "Kirjuta mysql salasõna(Kui ei mäleta, vajuta <Enter> ja kasuta \"4. Parooli reset\"): "
read SQLPASS
help_menu
while true
do
echo -n ">>"
read i
case "$i" in
1)
date=`date +%Y-%m-%d_%R`
mysqldump -u $SQLUSER -p$SQLPASS --all-databases > $HOME/backup_$date.sql
if [ -f "$HOME/backup_$date.sql" ]; then
echo "Su koopia asub: $HOME/backup_$date.sql"
fi
;;
2)
echo -n "Kirjuta aadress (/kus/on/fail/dump.sql): "
read p
mysql -u $SQLUSER -p$SQLPASS < $p
;;
3)
echo -n "Kirjuta mysql kasutajanimi: "
read SQLUSER
echo -n "Kirjuta mysql salasõna(Kui ei mäleta, vajuta <Enter> ja kasuta \"4. Parooli reset\"): "
read SQLPASS
;;
4)
echo "Server stop..."
sudo /etc/init.d/mysql stop
echo -n "Kirjuta uut mysql salaõna: "
read SQLPASS
sudo mysqld --skip-grant-tables &
mysql -u $SQLUSER <<< "UPDATE user SET Password=PASSWORD('$SQLPASS') WHERE User='$SQLUSER'"
mysql -u $SQLUSER <<< "FLUSH PRIVILEGES"
echo "Server start..."
/etc/init.d/mysql start
;;
h)
help_menu
;;
exit)
echo "Bye bye..."
exit 0
;;
*)
echo "Vale käsk. Kui abi on vaja, kirjuta täht \"h\""
;;
esac
done
Python
#!/usr/bin/python
#Autor: Arina Püvi, A21, apuvi@itcollege.ee
#Versioon 0.9
#
# Skript, mis teeb ühendust ftp serveriga ja laeb alla
# kõik faile.
import os
from ftplib import FTP
#===================
def workdir():
todir = raw_input('Kuhu koik salvestada(n. /kasutaja/kodukataloogi/aadress/): ')
if not os.path.isdir(todir):
i = raw_input('Kataloogi pole. Kas tahad uut teha? (y/n)')
if i=='y':
os.makedirs(todir)
return todir
else:
todir = workdir()
else:
return todir
#===================
# Lisainfo, et serverile logida
resource = raw_input('Kirjuta FTP aadress: ')
login = raw_input('Kasutajanimi: ')
password = raw_input('Salasona: ')
todir = workdir()
# ühendamine
ftp = FTP(resource)
ftp.login(login, password)
ftp.cwd('/')
# lae alla kõik
for files in ftp.nlst('*'):
ftp.retrbinary('RETR '+files, open(os.path.join(todir, files), 'wb').write, 1024)
# ühendust lpetamine
ftp.close()
Powershell
Function Search-OldFiles {
param ($paev,$tee,[switch]$search)
$abi = @"
`n
`t funktsiooni süntaks:
`t -paev - kui vanad failid on vaja
`t -tee - kausta aadress
`t -search - kui argument -search on, skript otsib faili. Kui argumenti pole, kustutab
`t------------------------------------------------------------------------------------
`t Näiteks:
`t Search-OldFiles -paev 2 -tee 'C:\Games' -search
"@
# kontrollemine - kas kasutaja kirjutas argumente?
if (!($paev) -or !($tee) ) {write-warning $abi; return}
# rekursiivne faili otsing
foreach ($item in Get-ChildItem -LiteralPath $tee -Recurse -Force | Where-Object {!$_.PSIsContainer}) {
# kuupäeva võrdlus
if ((Get-Date).adddays(-$paev) -ge $item.CreationTime) {
# kui argument "search" on, skript otsib faili. Kui argumenti pole, kustutab
if ($search) { '"' + $item.fullname + '"' }
else { $item.fullname | Remove-Item -Force -WhatIf }
}
}
}
Powershell Arvestus
#Autor: Arina Püvi A21, apuvi@itcollege.ee
#Versioon: 0.1
#Kõige suuremat faili ja kataloogi leidmine.
# Skript küsib faili arv
$arv = Read-Host "Kui palju faili ja kataloogi sa tahad näha: "
# Otsib faili
Write-Host "Kõige suuremad failid:"
Get-ChildItem c:\ -recurse | Sort-Object length -descending | select-object -first $arv | ft name, directory -wrap -auto
# Otsib kataloogi
Write-Host "Kõige suuremad kataloogid:"
gci c:\ -Recurse | where {$_.attributes -eq "Directory"} | Sort-Object length -descending | select-object -first $arv | ft name, directory -wrap -auto