PowerShell: Karel Niine, Kodutoo.ps1: Difference between revisions
Created page with '<# .SYNOPSIS See skript väljastab kõik print sündmused nende toimumise aja ja omaniku. .DESCRIPTION Skript võtab eventlogist välja kõik print sündmused ning v…' |
No edit summary |
||
Line 1: | Line 1: | ||
<source lang="powershell"> | |||
<# | <# | ||
Line 6: | Line 8: | ||
<# | |||
.SYNOPSIS | |||
See skript väljastab kõik print sündmused nende toimumise aja ja omaniku. | |||
.DESCRIPTION | |||
Skript võtab eventlogist välja kõik print sündmused ning väljastab need ekraanile või kui | |||
on määratud fail,siis faili. CSV kujul, eraldajaks ; | |||
algus - ennem (before) | |||
pärast - lõpp (after) | |||
.EXAMPLE | |||
kodutoo -fail print_log.csv -algus 11/11/11 -lopp 1/1/11 | |||
#> | |||
param( | |||
[string]$Algus="algus", | |||
[string]$Lopp="lopp", | |||
[string]$Fail="fail" | |||
) | |||
#Esimene rida | |||
$esimeneString="Aeg;Kasutaja;Printer;Lehtede_arv;Dokumendi Nimi"; | |||
# kui faili parameetrit ei ole antud siis prindime lihtsalt tiitelrea | |||
if($Fail -eq "fail"){ | |||
write-host $esimeneString; | |||
}else{ | |||
$stream = [System.IO.StreamWriter] $Fail | |||
# KIRJUTAME TIITEL REA faili | |||
$stream.WriteLine($esimeneString); | |||
} | |||
# Kontrollime kas on Algus ja lõpp antud | |||
# www.powershellpro.com/powershell-tutorial-introduction/powershell-tutorial-conditional-logic/ | |||
if($Lopp -ne "lopp" -and $Algus -ne "algus"){ | |||
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp -before $Algus | Where-Object{$_.EventID -eq "10"} | |||
}elseif($Lopp -ne "lopp" -and $Algus -eq "algus"){ | |||
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp | Where-Object{$_.EventID -eq "10"} | |||
}elseif($Lopp -eq "lopp" -and $Algus -ne "algus"){ | |||
$PrintEvents = Get-EventLog -log System -entrytype Information -before $Algus | Where-Object{$_.EventID -eq "10"} | |||
}else{ | |||
# korjame systeemist kõik print eventid else if | |||
$PrintEvents = Get-EventLog -log System -entrytype Information | Where-Object{$_.EventID -eq "10"} | |||
} | |||
# iga objekti kohta | |||
foreach ($objEvent in $PrintEvents) { | |||
$reaString=$objEvent.TimeWritten.ToString()+";"+$objEvent.ReplacementStrings[2]+";"+$objEvent.ReplacementStrings[3]+";"+$objEvent.ReplacementStrings[6]+";"+$objEvent.ReplacementStrings[1] | |||
# Kontroll kas salvestame või v2ljastame | |||
if($Fail -ne "fail"){ | |||
$stream.WriteLine($reaString); | |||
}else{ | |||
write-host $reaString; | |||
} | |||
} | |||
# kui on antud faili parameeter tuleb peale avamist ka kinni panna. | |||
if($Fail -eq "fail"){ | |||
}else{ | |||
$stream.close(); | |||
} | |||
.DESCRIPTION | .DESCRIPTION | ||
Revision as of 22:10, 26 January 2012
<source lang="powershell">
<#
.SYNOPSIS
See skript väljastab kõik print sündmused nende toimumise aja ja omaniku.
<#
.SYNOPSIS
See skript väljastab kõik print sündmused nende toimumise aja ja omaniku.
.DESCRIPTION
Skript võtab eventlogist välja kõik print sündmused ning väljastab need ekraanile või kui
on määratud fail,siis faili. CSV kujul, eraldajaks ;
algus - ennem (before) pärast - lõpp (after)
.EXAMPLE
kodutoo -fail print_log.csv -algus 11/11/11 -lopp 1/1/11
- >
param(
[string]$Algus="algus",
[string]$Lopp="lopp",
[string]$Fail="fail"
)
- Esimene rida
$esimeneString="Aeg;Kasutaja;Printer;Lehtede_arv;Dokumendi Nimi";
- kui faili parameetrit ei ole antud siis prindime lihtsalt tiitelrea
if($Fail -eq "fail"){
write-host $esimeneString;
}else{
$stream = [System.IO.StreamWriter] $Fail
# KIRJUTAME TIITEL REA faili
$stream.WriteLine($esimeneString);
}
- Kontrollime kas on Algus ja lõpp antud
- www.powershellpro.com/powershell-tutorial-introduction/powershell-tutorial-conditional-logic/
if($Lopp -ne "lopp" -and $Algus -ne "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp -before $Algus | Where-Object{$_.EventID -eq "10"}
}elseif($Lopp -ne "lopp" -and $Algus -eq "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp | Where-Object{$_.EventID -eq "10"}
}elseif($Lopp -eq "lopp" -and $Algus -ne "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -before $Algus | Where-Object{$_.EventID -eq "10"}
}else{
# korjame systeemist kõik print eventid else if
$PrintEvents = Get-EventLog -log System -entrytype Information | Where-Object{$_.EventID -eq "10"}
}
- iga objekti kohta
foreach ($objEvent in $PrintEvents) {
$reaString=$objEvent.TimeWritten.ToString()+";"+$objEvent.ReplacementStrings[2]+";"+$objEvent.ReplacementStrings[3]+";"+$objEvent.ReplacementStrings[6]+";"+$objEvent.ReplacementStrings[1]
# Kontroll kas salvestame või v2ljastame
if($Fail -ne "fail"){
$stream.WriteLine($reaString);
}else{
write-host $reaString;
}
}
- kui on antud faili parameeter tuleb peale avamist ka kinni panna.
if($Fail -eq "fail"){
}else{
$stream.close();
} .DESCRIPTION
Skript võtab eventlogist välja kõik print sündmused ning väljastab need ekraanile või kui
on määratud fail,siis faili. CSV kujul, eraldajaks ;
.EXAMPLE
kodutoo -fail print_log.csv -algus 11/11/11 -lopp 1/1/11
- >
param(
[string]$Algus="algus",
[string]$Lopp="lopp",
[string]$Fail="fail"
)
- Esimene rida
$esimeneString="Aeg;Kasutaja;Printer;Lehtede_arv;Dokumendi Nimi";
- kui faili parameetrit ei ole antud siis prindime lihtsalt tiitelrea
if($Fail -eq "fail"){
write-host $esimeneString;
}else{
$stream = [System.IO.StreamWriter] $Fail
# KIRJUTAME TIITEL REA faili
$stream.WriteLine($esimeneString);
}
- Kontrollime kas on Algus ja lõpp antud
- www.powershellpro.com/powershell-tutorial-introduction/powershell-tutorial-conditional-logic/
if($Lopp -ne "lopp" -and $Algus -ne "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp -before $Algus | Where-Object{$_.EventID -eq "10"}
}elseif($Lopp -ne "lopp" -and $Algus -eq "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -after $Lopp | Where-Object{$_.EventID -eq "10"}
}elseif($Lopp -eq "lopp" -and $Algus -ne "algus"){
$PrintEvents = Get-EventLog -log System -entrytype Information -before $Algus | Where-Object{$_.EventID -eq "10"}
}else{
# korjame systeemist kõik print eventid else if
$PrintEvents = Get-EventLog -log System -entrytype Information | Where-Object{$_.EventID -eq "10"}
}
- iga objekti kohta
foreach ($objEvent in $PrintEvents) {
$reaString=$objEvent.TimeWritten.ToString()+";"+$objEvent.ReplacementStrings[2]+";"+$objEvent.ReplacementStrings[3]+";"+$objEvent.ReplacementStrings[6]+";"+$objEvent.ReplacementStrings[1]
# Kontroll kas salvestame või v2ljastame
if($Fail -ne "fail"){
$stream.WriteLine($reaString);
}else{
write-host $reaString;
}
}
- kui on antud faili parameeter tuleb peale avamist ka kinni panna.
if($Fail -eq "fail"){
}else{
$stream.close();
}