ZippiScrippi 2 Geschrieben vor 3 Stunden Melden Geschrieben vor 3 Stunden (bearbeitet) Hallo Leute, gestern habe ich meinem PC, auf dem ich mit Powershell Skripte erstelle, auf Windows 11 umgestellt. Seit dem habe ich folgendes Problem: Ich habe ein Skript, das ein Pfad zu einer Datei prüft, mittels IF (Test-Path -Path $Datei) ... Das Skript bearbeite ich aktuell und führe es mit ISE als Administrator aus. Das war bisher kein Problem, nur wenn die Datei vorhanden war, wurde die Funktion aufgerufen - so wie es sein soll. Seit ich mit Win 11 und PS 5.1 arbeite, wird an dieser Stelle nicht mehr die Datei geprüft, sondern nur der Pfad. Damit geht das Skript in die Funktion und scheitert, weil die Datei zu Bearbeitung nicht gefunden werden kann. Und jetzt wird es richtig Kurios: Wenn der Fehler nach dem Start der ISE Umgebung auftritt und ich es dann ein zweites Mal ausführe, geht es. Ich hatte es dann statt -Path auch mal mit -LiteralPath versuche, dies half aber nicht... auch nicht nur Test-Path. Was ist da los? Hat das schon mal jemand anders vorgefunden? Danke vorab für Eure Hilfe. Infos zur Version: 'Name Value ---- ----- PSVersion 5.1.26100.6584 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.26100.6584 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 bearbeitet vor 2 Stunden von ZippiScrippi
BOfH_666 586 Geschrieben vor 2 Stunden Melden Geschrieben vor 2 Stunden (bearbeitet) Vielleicht teilst Du einfach mal das komplette Skript mit uns. So ohne jeglichen Code wird es schwer irgendwas Hilfreiches zu empfehlen. Wenn Du Code oder Konsolen-Output postest, formatier das Ganze bitte auch als Code hier im Forum. Das erleichtert das Lesen und Kopieren usw. bearbeitet vor 2 Stunden von BOfH_666
ZippiScrippi 2 Geschrieben vor 2 Stunden Autor Melden Geschrieben vor 2 Stunden Ok, aber es ist nichts besonders mit dem Code: $Reboot="C:\Test\Reboot.txt" IF (Test-Path -Path $Reboot) { Write-Log "INSTALLATION FINISHED - REBOOT ALREADY DONE" Do something with the file Reboot.txt... } Das Problem ist, dass nach dem ersten Start der ISE unter Windows 11 die Abfrage true ergibt und dann die Funktion ausgeführt wird - was so nicht sein soll. Es wird dann eine Meldung wegen der Exception eingeblendet, hier kann ich z.B. nein wählen - was ich dann mache. Dann starte ich das Skript in ISE erneut, dieses Mal erfolgt die Abfrage ohne Fehler, die Funktion wird nicht aufgerufen. Wenn ich das Skript in der endgültigen Umgebung laufen lasse, tritt der oben genannte Fehler immer auf...
Dukel 468 Geschrieben vor 2 Stunden Melden Geschrieben vor 2 Stunden Wie sieht es in der Powershell (ohne ISE) aus?
ZippiScrippi 2 Geschrieben vor 2 Stunden Autor Melden Geschrieben vor 2 Stunden Hi Leute, shame on me. Ich habe den Fehler gefunden. In einer anderen Ecke, die ich zwar nicht bearbeitet habe, habe ich wohl versehentlich die Datei in der Var $Reboot kaput gemacht. Statt "C:\Test\Reboot.txt" stand dort "C:\Test\Reboot" So geht es natürlich gar nicht. Aber der Fehler ist gefunden. Sorry und Danke. 1
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden