Powershell Script - Ausgabe Tasks eines Servers in eine HTML Seite
Powershell Neuling !!!!
Hallo, hatte vor kurzem ja schon die Frage nach einem Script zum Auslesen der Tasks gefragt. Das habe ich soweit hinbekommen. Ich kann das Ergebnis auch "lesbar" in eine .txt Datei ausgeben. Mein Problem ist es jetzt dieses auch "lesbar" in eine HTML Seite zu bekommen. Die reine Ausgabe nach html klappt, aber lesbar und hübsch ist was anderes.
Hier mal mein Code bislang:
An meinem Code gibt es sicherlich noch Verbesserungen. Das Ergebnis sollte jeden gefundenen Task (samt Metadaten) einzelnd in der html darstellen (so wie sie auch in der txt zu lesen sind).
Besten Dank im Voraus an euch Profis.
Gruß Ralf
Screenshots:
Hallo, hatte vor kurzem ja schon die Frage nach einem Script zum Auslesen der Tasks gefragt. Das habe ich soweit hinbekommen. Ich kann das Ergebnis auch "lesbar" in eine .txt Datei ausgeben. Mein Problem ist es jetzt dieses auch "lesbar" in eine HTML Seite zu bekommen. Die reine Ausgabe nach html klappt, aber lesbar und hübsch ist was anderes.
Hier mal mein Code bislang:
$Datum = Get-Date -Format " dd.MM.yyyy 'um' HH:mm:ss 'Uhr'"
$Ueberschrift = "<h1 ALIGN=CENTER>TASK ÜBERSICHT</h1>"
$Erstell_Dat = "<h3 ALIGN=CENTER>Erstellungsdatum:$Datum</h3>"
$TaskS = "<h1 ALIGN=CENTER>Alle eingetragenen Tasks</h1>"
$sched = New-Object -Com "Schedule.Service"
$sched.Connect()
$out = @()
$sched.GetFolder("\").GetTasks(0) | % {
$xml = [xml]$_.xml
$out += New-Object psobject -Property @{
'Name' = $_.name
'Pfad' = $_.path
'Status' = $_.state
'Enabled' = $_.enabled
'LastRunTime' = $_.lastruntime
'LastTaskResult' = $_.lasttaskresult
'NumberOfMissedRuns' = $_.numberofmissedruns
'NextRunTime' = $_.nextruntime
'UserId' = ([xml]$_.xml).Task.Principals.Principal.UserID
'Description' = ([xml]$_.xml).Task.RegistrationInfo.Description
}
}
$out | fl Name,Pfad,Status,Enabled,LastRunTime,NextRuNTime,LastTaskResult,NumberOfMissedRuns,userID,Description |
out-file 'C:\test.txt'
$Ergebnis = Get-Content "C:\test.txt"
ConvertTo-Html -Title "Eventübersicht" -body "$Ueberschrift $Erstell_Dat <br/> <hr NOSHADE SIZE=6 WIDTH=80% COLOR=#0033CC /> <br/>
$Tasks <br/> $Ergebnis" |
out-file 'C:\test.html'
An meinem Code gibt es sicherlich noch Verbesserungen. Das Ergebnis sollte jeden gefundenen Task (samt Metadaten) einzelnd in der html darstellen (so wie sie auch in der txt zu lesen sind).
Besten Dank im Voraus an euch Profis.
Gruß Ralf
Screenshots:
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 261696
Url: https://administrator.de/forum/powershell-script-ausgabe-tasks-eines-servers-in-eine-html-seite-261696.html
Ausgedruckt am: 22.04.2025 um 12:04 Uhr
4 Kommentare
Neuester Kommentar
Moin,
um eine HTML-Seite besser zu gestalten, solltest du zu css greifen.
https://www.sepago.de/blog/2014/01/20/powershell-daten-als-html-report-a ...
http://thesurlyadmin.com/2013/01/21/how-to-create-html-reports/
Grüße,
Tiberus
um eine HTML-Seite besser zu gestalten, solltest du zu css greifen.
https://www.sepago.de/blog/2014/01/20/powershell-daten-als-html-report-a ...
http://thesurlyadmin.com/2013/01/21/how-to-create-html-reports/
Grüße,
Tiberus
Hallo Lexura,
guckst du hier:
Grüße Uwe
guckst du hier:
$sched = New-Object -Com "Schedule.Service"
$sched.Connect()
$out = @()
$sched.GetFolder("\").GetTasks(0) | % {
$xml = [xml]$_.xml
$out += New-Object psobject -Property @{
'Name' = $_.name
'Pfad' = $_.path
'Status' = $_.state
'Enabled' = $_.enabled
'LastRunTime' = $_.lastruntime
'LastTaskResult' = $_.lasttaskresult
'NumberOfMissedRuns' = $_.numberofmissedruns
'NextRunTime' = $_.nextruntime
'UserId' = ([xml]$_.xml).Task.Principals.Principal.UserID
'Description' = ([xml]$_.xml).Task.RegistrationInfo.Description
}
}
$tasks = $out | fl Name,Pfad,Status,Enabled,LastRunTime,NextRuNTime,LastTaskResult,NumberOfMissedRuns,userID,Description | out-string
$html = @"
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Geplante Tasks</title>
</head>
<style type="text/css">
.center{text-align:center}
</style>
<body>
<div class="center">
<h1>TASK ÜBERSICHT</h1>
<h3>Erstellungsdatum:$(Get-Date -Format " dd.MM.yyyy 'um' HH:mm:ss 'Uhr'")</h3>
<h1>Alle eingetragenen Tasks</h1>
<hr NOSHADE SIZE=6 WIDTH=80% COLOR=#0033CC />
</div>
<div>
<pre>
$tasks
</pre>
</div>
</body>
</html>
"@ | out-file 'C:\Status-Event.html'