masterbaiter
Goto Top

Powershell HPE Cmdlet - If - Else

Hi,

kann mir wer aushelfen?
Im folgenden möchte ich die Ausgabe von Get-HPBIOSPowerRegulator überprüfen und daraus eine Aktion folgen lassen.
Es ist sicher ein Basic in dem Fall, aber was mach ich falsch?

Die momentane Ausgabe ist: "HP Dynamic Power Savings Mode"

...also sollte "Ja es ist im Saving Mode" ausgeben, tut es aber nicht, sondern "nein es nicht nicht im Saving Mode" .

Was hab ich übersehen?

$username = "User"  
$password = cat C:\mysecurestring.txt | Convertto-SecureString
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $password

$conObj = Connect-HPBIOS "ILO_Hostname" -Credential $cred -DisableCertificateAuthentication  

$pr = Get-HPBIOSPowerRegulator $conObj | select HPPowerRegulator |fl

if ($pr -eq "HP Dynamic Power Savings Mode")  
 {echo "Ja es ist im Saving Mode"}  
   else {echo "nein es nicht nicht im Saving Mode"}  

Danke & Gruß

Content-Key: 335467

Url: https://administrator.de/contentid/335467

Ausgedruckt am: 28.03.2024 um 22:03 Uhr

Mitglied: 132895
Lösung 132895 19.04.2017 aktualisiert um 10:00:26 Uhr
Goto Top
Dein Vergleich mit einem Format-String-Objekt ist falsch, Format-List ist für die Ausgabe gedacht nicht für den Vergleich!
Wenn also die Property "HPPowerRegulator" heißt und ein Objekt vom Typ String ist geht es so:
$pr = Get-HPBIOSPowerRegulator $conObj | select -Expand HPPowerRegulator
if ($pr -eq "HP Dynamic Power Savings Mode") {  
    echo "Ja es ist im Saving Mode"else {
    echo "nein es nicht nicht im Saving Mode"
Gruß
Mitglied: MasterBaiter
MasterBaiter 19.04.2017 um 10:04:40 Uhr
Goto Top
AH!
Ich danke dir.
Mitglied: 132895
Lösung 132895 20.04.2017 um 17:00:54 Uhr
Goto Top
Wenn's das dann war, den Haken nicht vergessen.