User:Apuvi

From ICO wiki
Revision as of 01:17, 15 June 2011 by Apuvi (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

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