Wie kann ich ein Script in ein Script in Powershell starten?
Hallo, ich möchte ein Script in einem Script Starten ich habe das Problem, dass ich Parameter von Script (1) in script(2) übergeben muss, damit ich dann in Script(1) das Script(2) aufrufen kann
2 Antworten
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Programmiersprache, PowerShell, Programmieren & Softwareentwicklung
Estmal soltest Du Dir die Frage stellen, weshalb Du überhaupt mehrere Scripte benötigst und nicht alles in eins schreibst.
egal
test1.ps1
#rufe 2.Script mit erwarteten Parametern auf
& '.\test2.ps1' 'ratz' 5
'wieder da'
#einfach eine Liste an 3. Script übergeben
& '.\test3.ps1' 'mimimi' 'Affenbande' '0815' 666 13
pause
Die definition der zu übernehmenden Parameter erfolgt für ein Script in gleicher Weise wie bei einer Funktion.
test2.ps1
param (
[string]$blubb,
[int]$blah
)
Write-Host blubb = $blubb -fo green
Write-Host blah = $blah -fo mag
return $blubb * $blah
Natürlich kannst Du auch einfach übergebene Argumente über die $Args -Variable abrufen :
test3.ps1
#Argumente als normale Liste/Array Empfangen...
$args
Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren
Ah okay, Ich möchte mit 2 Scripten Arbeiten, für den Lernfaktor. Ich habe es verstanden. Danke :D
& '.\MeinScript.ps1'