Я разделил шаги моего скрипта установки на разные функции. Я хочу когда-нибудь остановить сценарий. Если я перезапущу скрипт, он должен продолжить последний шаг, на котором я остановился. Итак, я записал последний шаг в Tempfile. Если я запускаю скрипт, он читает последний зарегистрированный шаг временных файлов и перезапускает этот шаг при перезапуске.
Function Step1 {
Set-Content -Path $TEMPFILE -value "Step1" #"Setting current step" into a temp file
do first stuff #part in th function. e.g. copy files, add access rights...
Step2 #calling the next function
}
Function Step2 {
Set-Content -Path $TEMPFILE -value "Step2"
do second stuff
Step3...
}
...Step 25
При запуске скрипт проверяет, существует ли Tempfile, и добавляет последний шаг в переменную [String].
Есть ли способ получить эту строковую переменную в последовательность «Перейти к функции»? как: ...
If ($GETSTEP){
Write-Host "Continuing with $GETSTEP"
$GOTO = ${function:GETSTEP}
&GOTO
}else{
Write-Host "GET STARTET"
Step1
}
PowerShell версия 5.1.14393.3471 ...