Powershell-Script-Verknüpfung mit Parameter "-emergency" in ZIEL als Schutz vor falscher Ausführung

dom-escher
Goto Top
Hallo Community,
ich denke es gibt dafür eine einfache, ggf einzeilige Lösung, aber erstmal zur Situation:

Wir nutzen ein Programm in dem ein Powershell-script bei Vorfall X gestartet werden soll.
Damit das Script nicht zufällig oder argwöhnisch gestartet werdexn kann, soll das Script nur dann
seine Befehle abarbeiten, wenn das Script mit dem Parameter "-emergency" gestartet wurde.

Eigentlich so, als würde man eine Verknüpfung erstellen und unter Eigenschaften in Feld
Ziel den zusatz -emergency beigefügt haben.

emergency-link

Der Versuch, das Ganze per
ans laufen zu bekommen, hat -warum auch immer - nicht funktioniert.
Egal was ich tue, er stoppt das Script ob mit oder ohne -emergency.

Script:


Ideen?
Mandatory und Switch scheinen mit zu aufwendig, vielleicht hat jemand ne fertige lösung?

Content-Key: 1746198376

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

Ausgedruckt am: 18.05.2022 um 17:05 Uhr

Mitglied: SlainteMhath
SlainteMhath 21.01.2022 aktualisiert um 11:14:18 Uhr
Goto Top
Moin,

ich würde dem "emergency" in den Params als boolean mit einem Default von "$FALSE" mitgeben.

Dann kannst du mit "If($emergency)...." das script laufen lassen, sofern es mit "-emergency:$TRUE" gestartet wurde.

lg,
Slainte

/EDIT: @colinardo 's LÖsung ist elegangter, nimm die :) face-smile
Mitglied: colinardo
Lösung colinardo 21.01.2022 aktualisiert um 10:25:57 Uhr
Goto Top
Servus,
da fehlt die Property IsPresent für das Testen auf Vorhandensein eines Parameters vom Typ [switch].
Grüße Uwe
Mitglied: Dom-Escher
Dom-Escher 25.01.2022 aktualisiert um 07:43:03 Uhr
Goto Top
hi und nochmal dank für die Hilfe, aber :
ich habe das so gemacht wie beschrieben, dennoch , wenn ich in der Verknüpfung unter den Parameter -emergency setze, also das Skript eigentlich ausgeführt werd4en soll, bricht er ab.

zum ausführen habe ich eine bat geschrieben mit Ausführung plus Parameter, gleiches Problem.

:-( face-sad
was mache ich falsch?

wieso bekomme ich den Sprung nicht hin ;-(
Mitglied: colinardo
colinardo 25.01.2022 aktualisiert um 07:54:14 Uhr
Goto Top
Dann hast du die Verknüpfung schon falsch erstellt oder die Executionpolicy nicht angepasst. Da du uns leider verschweigst wie du sie oder die Batch erstellt hast, ein Aufruf mit Parametern sollte so aussehen

Klappt mit obigem Schnipsel einwandfrei!

Wichtig, der obige Schnipsel muss ganz am Anfang des Skriptes stehen damit er greifen kann !

Empfehlung als Lektüre
Powershell Link-Leitfaden für Anfänger