Powershell Problem IF Statement
Hallo liebe Admins,
ich bin neu in Powershell eingertiegen und habe mit Hilfe und Beispielen schon Einiges gebaut.
Jetzt verzweifle ich seit 2 tagen daran ein Skripe anzupassen.
Es soll eine Liste aus dem AD ziehen und prüfen, ob die Rechner online sind.
Ich habe das Skript soweit, daß es mir eine Liste in CSV erstellt, aber ich möchte nur Einträge haben, wenn der Rechner online ist.
Habe mit diversen IF, ELSE Konstrukten probiert im folgenden Teil zu verzweigen, aber keinen Erfolg gehabt.
Weiß jemand Rat?
Hier ist das komplette Skript:
Quelle:
http://community.idera.com/database-tools/powershell/ask_the_experts/f/ ...
ich bin neu in Powershell eingertiegen und habe mit Hilfe und Beispielen schon Einiges gebaut.
Jetzt verzweifle ich seit 2 tagen daran ein Skripe anzupassen.
Es soll eine Liste aus dem AD ziehen und prüfen, ob die Rechner online sind.
Ich habe das Skript soweit, daß es mir eine Liste in CSV erstellt, aber ich möchte nur Einträge haben, wenn der Rechner online ist.
Habe mit diversen IF, ELSE Konstrukten probiert im folgenden Teil zu verzweigen, aber keinen Erfolg gehabt.
# Create an object for each computer with the client's online status.
$Output += New-Object -TypeName PSObject -Property @{
"ComputerName" = $_.Name;
"Status" = Test-Connection -ComputerName $_.Name -Quiet -Count 1
}
Hier ist das komplette Skript:
# Dynamic array to hold the output.
$Output = @()
# grab a list of computers from AD.
$ComputerList = Get-ADComputer -Filter *
# Count the number of computers for the Write-Progress Cmdlet.
$Count = $ComputerList |
Measure-Object |
Select-Object -ExpandProperty Count
# Control variable
$I = 0
$ComputerList |
ForEach-Object {
#Incriment the control variable
$I++
# Calculate percent completed
$PC = ($I/$Count)*100
# Display progress bar.
Write-Progress -Activity "Connectivity Test: $_.Name" -Status "$PC% Complete" -PercentComplete $PC
# Create an object for each computer with the client's online status.
$Output += New-Object -TypeName PSObject -Property @{
"ComputerName" = $_.Name;
"Status" = Test-Connection -ComputerName $_.Name -Quiet -Count 1
}
}
# Convert the output to HTML
$MailOutput = $Output | ConvertTo-HTML -Fragment | Out-String
# Send the email.
Send-MailMessage -to "Administrator@TechTour.com" -From "Allofus@HP.com" -Subject "Connectivity Test" -BodyAsHtml -building $MailOutput -SmtpServer Tech-EX1
Quelle:
http://community.idera.com/database-tools/powershell/ask_the_experts/f/ ...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 392409
Url: https://administrator.de/contentid/392409
Ausgedruckt am: 22.11.2024 um 14:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo,
ich sehe im Skript keine Abfrage, wie geschildert?
Hast du die denn noch gar nicht eingebaut?
dazu, u.a
https://www.windowspro.de/script/if-else-switch-bedingte-anweisungen-pow ...
ich sehe im Skript keine Abfrage, wie geschildert?
Hast du die denn noch gar nicht eingebaut?
dazu, u.a
https://www.windowspro.de/script/if-else-switch-bedingte-anweisungen-pow ...
# ...
# ..
$onlineonly = $output | ?{$_.Status}