Quantcast
Channel: Windows PowerShell Forum
Viewing all articles
Browse latest Browse all 2314

Benutzereingaben ueber Konsole (read-host funktioniert nicht) wenn das Skript innerhalb eines anderen Skriptes aufgerufen wird.

$
0
0

Hallo Powershell-Profis,

ich schreibe ein Powershell-Skript (PSVersion 5.1.14393.2636) auf Windows Server 2016.
Das Skript soll am Ende mehrere verschiedene Aufgaben erfüllen, daher ist es untergliedert:
"Programmstart.ps1"
     "Programmphase1.ps1"
            "UnterprogrammPhase1a.ps1"
            "UnterprogrammPhase1b.ps1"
            "UnterprogrammPhase1c.ps1"
     "Programmphase2.ps1"
            "UnterprogrammPhase2a.ps1"
            "UnterprogrammPhase2b.ps1"
     "Programmphase3.ps1"
            "UnterprogrammPhase3a.ps1"
            "UnterprogrammPhase3b.ps1"
            "UnterprogrammPhase3c.ps1"
            "UnterprogrammPhase3d.ps1"

"Programmstart.ps1" ruft die Dateien "Programmphase....ps1" auf, welche wiederum die Dateien "UnterprogrammPhase....ps1" aufrufen.

Der Aufruf erfolgt über  powershell.exe -file Programmphase1.ps1 -parameter1 $parameter1 - parameter2 $parameter2 

Grundsätzlich funktioniert dieses Prinzip, bis auf zwei Punkte:

Punkt1: Benutzereingaben über die Konsole

(Ich möchte keine GUI verwenden, mit GUI funktioniert es)

Benutzereingaben über read-Host sind nur in der obersten Ebene "Programmstart.ps1" möglich.
Bereits in der nächsten Ebene "Programmphase1.ps1" bleibt das Skript einfach stehen. Es können weder Eingaben gemacht werden, noch kann das Skript abgebrochen werden.

Ich hatte schon versucht das Skript auszutricksen und habe anstatt read-host eine separate Datei mit Mandatory-Parameter aufgerufen, dies hat leider nicht funktioniert.

Gibt es eine Möglichkeit auch in dieser Ebene Benutzereingaben abzufragen?


Punkt2: Darstellung von Schriftfarben in der Konsole


Zur besseren Orientierung im Programmablauf der Konsole sollen bestimmte Textabschnitte farblich hervorgehoben werden. Dies funktioniert nur in der obersten Ebene "Programmstart.ps1" des Programms, nicht in den Unterebenen "Programmphase.....ps1" bzw "UnterprogrammPhase....ps1"

write-host "schwarze Schrift auf grünem Untergrund" -BackgroundColor Green -ForegroundColor Black

Hier werden die Farbanweisungen einfach ignoriert.

Ich habe selbst an mehreren Tagen über mehrere Stunden gegoogelt und ausprobiert, aber keine Lösung finden können.
Es wäre super, wenn mir hier jemand weiterhelfen könnte.

Vielen Dank schon mal im Voraus.

Viele Grüße
PSNeuling


Viewing all articles
Browse latest Browse all 2314


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>