Создание устойчивого сценария может означать много разных вещей для разных людей, ИМХО Важным является возможность быть способным заполнить сценарий «безопасно». Безопасно Я имею в виду минимизировать побочные эффекты и предотвратить негативные последствия.
Чтобы проиллюстрировать, скажем, у нас есть процесс установки, и нам нужно записать подробности о том, что происходит, когда мы запускаем установку.
Чтобы сохранить это просто, давайте просто сосредоточимся на требовании журнала.
Нам нужен файл журнала, на который мы можем посмотреть, когда происходит установка. Таким образом, простой подход был бы следующим образом.
Set-content log.txt «Информация об установке»
Приятно и просто, мы удовлетворили требование. Но давайте посмотрим, сможем ли мы сделать этот лайнер более устойчивым.
$ logfiletime дат yymmddhhmmss
$ logfilename = $ logfileTime + «_log.txt»
Set-Content $ logFilename «Информация об установке»
Теперь, даже если мы запустим эту установку несколько раз, у нас будет сценарий для каждого экземпляра установки, даже если это произойдет в один и тот же день в ту же минуту. Более интересное побочное эффект от того, чтобы сделать сценарий более устойчивым, заключается в том, что мы знаем, что может видеть, сколько раз эта установка запускается, потому что у нас есть файл для каждой попытки Instal. Так Преимущества того, чтобы сделать его более устойчивым соединением.
Я надеюсь, что этот простой пример поможет вам, дорогой читатель увидеть, как второй проход в создании сценария более устойчивым, даже один лайнер может извлечь выгоду из второго прохода.
Оригинал: «https://dev.to/briannipper/resilient-scripting-is-scripting-that-can-be-rerun-safely-3115»