User:Okilk: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''BASH Quest 9'''
<source lang="bash">
<source lang="bash">
#Autor: Oliver Kilk A-21
#Autor: Oliver Kilk A-21
#Skript: Küsib kasutajalt kasutajanime, kontrollib, et kas see on õige ja väljastab selle tekstfaili. (Hetkel /var/tmp/)
#Skript: Küsib kasutajalt kasutajanime, kontrollib, et kas see on õige ja väljastab selle tekstfaili.
 
#        Kui üle ei saa kirjutada, siis väljastab teate. (Quest 9)
#!/bin/bash
#!/bin/bash
#Autor: Oliver Kilk A-21
#Määran asukohad kontrollimiseks
#Skript: Quest 9 / 11.05.2011 / Skriptimiskeeled / IT Kolledž
asukoht=/var/tmp/
asukoht1=/var/tmp/username.txt
# Küsime kasutajanime
# Küsime kasutajanime
echo "Mis on sinu kasutajanimi?"
echo "Mis on sinu kasutajanimi?"
read username
read username
# Kontrollime kasutajanime
# Kontrollime kasutajanime
echo Kas see on õige kasutajanimi, "$username" [jah/ei]?
echo Kas see on õige kasutajanimi, "$username" [jah/ei]?
read reply
read reply
# Määran õiguste kontrollimise asukohad
 
asukoht=/var/tmp/
if [ "$reply" = "jah" ]; then
asukoht1=/var/tmp/username.txt
# Kontrollib, kas on juurkasutaja, kui ja, kirjutab üle
if [ "$reply" = "jah" ];  
if   [ $UID -eq 0 ]; then
then
# Kontrollib, kas vastav kaust on olemas ja kirjutatav ning kas fail on juba olemas
if [ -w "$asukoht" ] && [ -a "$asukoht1" ];
then
echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja"
else
echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
echo "$username" > /var/tmp/username.txt
echo "$username" > /var/tmp/username.txt
echo "Kasutajanimi "$username" on kirja pandud!"
echo "Kasutajanimi "$username" on kirja pandud!"
exit 1
exit 0
# Kontrollib kui kasutaja ei ole juurkasutaja ja fail on olemas
elif [ $UID -ne 0 ] && [ -a "$asukoht1" ]; then
echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja :("
exit 1
# Kontrollib kui kasutaja ei ole juurkasutaja ja faili ei ole asukohas
else [ $UID -ne 0 ] && [ ! -a "$asukoht1" ];
echo "$username" > /var/tmp/username.txt
echo "Kasutajanimi "$username" on kirja pandud ning asub: "$asukoht1"!"
exit 0
fi
fi
else
else
# Kui eelenavlt vastas, et ei ole õige kasutajnimi, siis proovib uuesti
 
# Kui eelenavlt vastas, et ei ole õige kasutajnimi, siis proovib uuesti ning samad kontrollid
echo "Sisesta kasutajanimi uuesti: "
echo "Sisesta kasutajanimi uuesti: "
read username
read username
if [ -w "$asukoht" ] && [ -a "$asukoht1" ];
if   [ $UID -eq 0 ]; then
then
echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja"
echo "$username" > /var/tmp/username.txt
else
echo "Kasutajanimi "$username" on kirja pandud!"
echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
exit 0
echo "$username" > /var/tmp/username.txt
elif [ $UID -ne 0 ] && [ -a "$asukoht1" ]; then
echo "Kasutajanimi "$username" on kirja pandud!"
echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja :("
exit 1
exit 1
fi
else [ $UID -ne 0 ] && [ ! -a "$asukoht1" ];
echo "$username" > /var/tmp/username.txt
echo "Kasutajanimi "$username" on kirja pandud ning asub: "$asukoht1"!"
exit 0
fi
fi
fi
</source>
----
'''PowerShell'''
<source lang="powershell">
# Script otsib kõik printerid, mis arvutile ühendatud ja lisab ka detailsemaid andmeid (port,share,printsevrer?)
# Autor: Oliver Kilk A-21
# Versioon 1.0
param( [string]$strComputer = "." )
$colItems = get-wmiobject -class "Win32_Printer" -namespace "root\CIMV2" -computername $strComputer
# Väljastame andmed koos infoga
foreach ($objItem in $colItems) {
write-host "Nimi                          :" $objItem.Name
write-host "Vaikimisi printer?            :" $objItem.Default
write-host "Võrk                          :" $objItem.Network
write-host "Pordi nimi                    :" $objItem.PortName
write-host "Draiveri, seadme nimi          :" $objItem.DriverName
write-host "Serveri nimi                  :" $objItem.ServerName
write-host "Share nimi                    :" $objItem.ShareName
write-host
}
</source>
'''PowerShell 2'''
<source lang="powershell">
# Kirjeldus :
# Skript lahendab IP järgi OU kuuluvuse arvutil ning väljastab selle tekstifaili
# Kasutab ping-host käsku
# Sisend on tekstifail IP-dega ja väljund on tekstifail arvuti kirjeldustega
param ($IPFile = $(Read-Host "Sisesta IP aadresside tekstifaili asukoht"),$LogFile = $(Read-Host "Sisesta väljundi asukoht"))
$ScriptLocation = Split-Path -Parent $MyInvocation.MyCommand.Path
IF( Get-PSSnapin | where { $_.Name -eq "PSCX" } ) {
$msg = "Skript alustas tööd $(Get-Date)" + "`n`r`n" + "Loen faili $IPFile`n`r`n"
Out-File $logFile -InputObject $msg
$File = Get-Content $IPFile
ForEach ( $line in $File){
# Lahenda arvuti nimi
$host = (Ping $line).Host.Split(".")[0]
$tmpOU = Invoke-Expression ("Cscript -nologo $ScriptLocation\SearchObjects-ReturnCanonicalName.vbs $host computer")
# Väljundisse sisestamine
$line+","+$tmpOU | Out-File -Append $LogFile
}
}
</source>
</source>

Latest revision as of 12:25, 31 May 2011

BASH Quest 9

#Autor: Oliver Kilk A-21
#Skript: Küsib kasutajalt kasutajanime, kontrollib, et kas see on õige ja väljastab selle tekstfaili.
#        Kui üle ei saa kirjutada, siis väljastab teate. (Quest 9)
#!/bin/bash
#Määran asukohad kontrollimiseks
asukoht=/var/tmp/
asukoht1=/var/tmp/username.txt
# Küsime kasutajanime
echo "Mis on sinu kasutajanimi?"
read username

# Kontrollime kasutajanime
echo Kas see on õige kasutajanimi, "$username" [jah/ei]?
read reply

if [ "$reply" = "jah" ]; then	
# Kontrollib, kas on juurkasutaja, kui ja, kirjutab üle
	if   [ $UID -eq 0 ]; then
			echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
			echo "$username" > /var/tmp/username.txt			
			echo "Kasutajanimi "$username" on kirja pandud!"			
			exit 0		
# Kontrollib kui kasutaja ei ole juurkasutaja ja fail on olemas
	elif [ $UID -ne 0 ] && [ -a "$asukoht1" ]; then			
			echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja :("
			exit 1
# Kontrollib kui kasutaja ei ole juurkasutaja ja faili ei ole asukohas
	else [ $UID -ne 0 ] && [ ! -a "$asukoht1" ];		
				echo "$username" > /var/tmp/username.txt
				echo "Kasutajanimi "$username" on kirja pandud ning asub: "$asukoht1"!"			
				exit 0			
	fi
else

# Kui eelenavlt vastas, et ei ole õige kasutajnimi, siis proovib uuesti ning samad kontrollid
			echo "Sisesta kasutajanimi uuesti: "
			read username			
	if   [ $UID -eq 0 ]; then
			echo "Kirjutan kasutajanime tekstifailile asukohaga: "$asukoht1""
			echo "$username" > /var/tmp/username.txt			
			echo "Kasutajanimi "$username" on kirja pandud!"			
			exit 0		
	elif [ $UID -ne 0 ] && [ -a "$asukoht1" ]; then			
			echo "Fail "$asukoht1" on olemas, seda ei saa üle kirjutada, pead olema juurkasutaja :("
			exit 1
	else [ $UID -ne 0 ] && [ ! -a "$asukoht1" ];		
				echo "$username" > /var/tmp/username.txt
				echo "Kasutajanimi "$username" on kirja pandud ning asub: "$asukoht1"!"			
				exit 0			
	fi
fi

PowerShell

# Script otsib kõik printerid, mis arvutile ühendatud ja lisab ka detailsemaid andmeid (port,share,printsevrer?)
# Autor: Oliver Kilk A-21
# Versioon 1.0

param( [string]$strComputer = "." )

$colItems = get-wmiobject -class "Win32_Printer" -namespace "root\CIMV2" -computername $strComputer

# Väljastame andmed koos infoga

foreach ($objItem in $colItems) {
	write-host "Nimi                           :" $objItem.Name
	write-host "Vaikimisi printer?             :" $objItem.Default
	write-host "Võrk                           :" $objItem.Network
	write-host "Pordi nimi                     :" $objItem.PortName
	write-host "Draiveri, seadme nimi          :" $objItem.DriverName
	write-host "Serveri nimi                   :" $objItem.ServerName
	write-host "Share nimi                     :" $objItem.ShareName
	write-host
}

PowerShell 2

# Kirjeldus :

# Skript lahendab IP järgi OU kuuluvuse arvutil ning väljastab selle tekstifaili

# Kasutab ping-host käsku

# Sisend on tekstifail IP-dega ja väljund on tekstifail arvuti kirjeldustega

param ($IPFile = $(Read-Host "Sisesta IP aadresside tekstifaili asukoht"),$LogFile = $(Read-Host "Sisesta väljundi asukoht"))


$ScriptLocation = Split-Path -Parent $MyInvocation.MyCommand.Path

IF( Get-PSSnapin | where { $_.Name -eq "PSCX" } ) {

$msg = "Skript alustas tööd $(Get-Date)" + "`n`r`n" + "Loen faili $IPFile`n`r`n"

Out-File $logFile -InputObject $msg 

$File = Get-Content $IPFile

ForEach ( $line in $File){

# Lahenda arvuti nimi

$host = (Ping $line).Host.Split(".")[0]

$tmpOU = Invoke-Expression ("Cscript -nologo $ScriptLocation\SearchObjects-ReturnCanonicalName.vbs $host computer") 

# Väljundisse sisestamine

$line+","+$tmpOU | Out-File -Append $LogFile

}

}