PowerShell: Oder-Bedingung in der While-Schleife

Habe ich ein wirklich einfaches problem, aber ich bekomme es nicht funktioniert. Ich habe eine Schleife, die prüft, ob zwei Dateien vorhanden, wenn nicht, dann schlafen Sie und prüfen Sie noch einmal in zwei Sekunden.

while (([System.IO.File]::Exists($terminationFile) -ne $true) -or ([System.IO.File]::Exists($noFile) -ne $true)) {
    # wait 2 seconds and check again
    Start-Sleep -s 2
}

Wenn ich beide Bedingungen in die gleiche Schleife prüft es nur die erste.

Wäre toll, wenn jemand helfen kann

Grüße,
Justin

  • Du meinst wohl: while (!(Test-Path $terminationFile) -und !(Test-Path $noFile)) { Start-Sleep -s 2 }
  • Danke, ich werde es versuchen. Aber warum funktioniert es wenn ich nur überprüfen: while ([System.IO.Datei]::Exists($terminationFile) -ne $true) ?
  • Super, scheint zu funktionieren jetzt. Danke!!!
  • Es denn wenn die erste Prüfung erfolgreich IE false, dann die zweite überprüfung wird nie ausgeführt. Wenn die erste überprüfung fehlschlägt, dann wäre es auf der zweiten. Wollen Sie beide überprüfungen erfolgreich, bevor Sie etwas verwenden -und wie David sagte,
InformationsquelleAutor nitsuj1001 | 2014-09-02
Schreibe einen Kommentar