Ich würde gerne mein Skript, wenn mit myscript.ps1 -loop -seconds 20
gestartet (Sekunden wäre der Start-Schlaf zwischen jeder Schleife).
- Das Skript ist sehr komplex und i dot Quelle zwei andere scriptfiles (eine für Funktionen und eine für Einstellungen).
- ich mit
$password = Read-Host "Enter password" -AsSecureString
im Skript nach einem Kennwort fragt, so kann ich nicht glaube, ich ohne dabei die $ Passwort Variable einen Kicker/Launcher-Skript Eingabe macht mich die jede Schleife PWD ..
Wie würde Ich gehe über das Schleifen des Skripts und ONLY-Schleife, wenn -loop
als benannter Parameter übergeben wird?
Sollte ich das ganze Skript in eine While-Schleife legen oder was wäre der beste Weg?
Fantastisch! Genau darum geht es mir! Aber was meinst du mit einer "Schleifenanzahl, die standardmäßig auf 1 gesetzt wird"? Sollte ich einen benannten Parameter nicht verwenden? Oh, und danke für [Effective Windows PowerShell: Das kostenlose eBook] (http://cid-5a8d2641e0963a97.office.live.com/self.aspx/Public/Effective%20Windows%20PowerShell.pdf) übrigens. Ein toller Beitrag für die Community! – Sune
Sie könnten einen Parameter wie folgt betrachten: 'function foo ($ LoopCount = 1, $ Sekunden = 20) {do {...} while (- $ LoopCount)}' dann wird der Code ausgeführt, wenn er nur 'foo' aufgerufen wird nur einmal, aber wenn es als 'foo -loopCount 10' ausgeführt wurde, würde es zehnmal durchlaufen und für jede Iteration 20 Sekunden lang schlafen. –
Das ist es, was ich auch bekommen habe. Aber ich habe in meiner Schleife ein '$ i ++' verwendet und mit 'while ($ loop -gt $ i)' überprüft. Wie funktioniert dein '- $ loopcount'? – Sune