none
Powershell output nutzen für If function RRS feed

  • Frage

  • Hi,

    I habe folgendes Problem:

    Ich vergleiche 2 Dateien miteinander:

    $a = ((Get-FileHash $memberlist).hash) -eq ((Get-FileHash $memberlist2).hash) 

    dann mache ich --> Write-Output $a

    Meine Frage:

    Ich möchte eine Email Senden wenn Output = False ist:

    If $a -eq "False"
    {Send-MailMessage -From abc@xyz.com -To $recipients -subject " Test" -Attachments $memberlist -smtp abcderf.something.com}

    Das Funktioniert aber nicht. Vielen Dank für die Hilfe

    Donnerstag, 25. Januar 2018 12:18

Antworten

  • Hallo,

    Versuche das mal so:

    if($a -eq $false){
    Send-MailMessage -From abc@xyz.com -To $recipients -subject " Test" -Attachments $memberlist -smtpServer abcderf.something.com
    }

    Sollte das nicht klappen, poste bitte die genaue Fehlermeldung.

    Donnerstag, 25. Januar 2018 12:21
  • Bitte formatiere Code als Code hier im Forum. Dann wird Dein Code auch vernünftig angezeigt, kann leichter kopiert werden und enthält keine ungewollten Zeilenumbrüche.

    Warum nutzt Du nicht sowas hier: 

    If(-not ((Get-FileHash $memberlist).hash) -eq ((Get-FileHash $memberlist2).hash)){
        {Send-MailMessage -From abc@xyz.com -To $recipients -subject " Test" -Attachments $memberlist -smtp abcderf.something.com}
    }
    
    ... oder falls Du bei positivem Vergleich noch andere Aktionen starten willst, dann packst Du das Email-Senden in den Else-Zweig .... 

    Best regards,

    (79,108,97,102|%{[char]$_})-join''

    Donnerstag, 25. Januar 2018 12:25

Alle Antworten

  • Hallo,

    Versuche das mal so:

    if($a -eq $false){
    Send-MailMessage -From abc@xyz.com -To $recipients -subject " Test" -Attachments $memberlist -smtpServer abcderf.something.com
    }

    Sollte das nicht klappen, poste bitte die genaue Fehlermeldung.

    Donnerstag, 25. Januar 2018 12:21
  • Bitte formatiere Code als Code hier im Forum. Dann wird Dein Code auch vernünftig angezeigt, kann leichter kopiert werden und enthält keine ungewollten Zeilenumbrüche.

    Warum nutzt Du nicht sowas hier: 

    If(-not ((Get-FileHash $memberlist).hash) -eq ((Get-FileHash $memberlist2).hash)){
        {Send-MailMessage -From abc@xyz.com -To $recipients -subject " Test" -Attachments $memberlist -smtp abcderf.something.com}
    }
    
    ... oder falls Du bei positivem Vergleich noch andere Aktionen starten willst, dann packst Du das Email-Senden in den Else-Zweig .... 

    Best regards,

    (79,108,97,102|%{[char]$_})-join''

    Donnerstag, 25. Januar 2018 12:25
  • Super Vielen Dank!!!
    Donnerstag, 25. Januar 2018 12:38
  • Super Vielen Dank!!!
    Donnerstag, 25. Januar 2018 12:38
  • Es sieht so aus, als hätte Dir wenigstens eine der Antworten geholfen. Wenn das so ist könntest Du selbige "als hilfreiche Antwort" markieren. Dann finden Andere, die das gleiche oder ein ähnliches Problem haben die Antwort schneller.

    Danke.


    Best regards,

    (79,108,97,102|%{[char]$_})-join''

    Donnerstag, 25. Januar 2018 14:28