У меня есть сценарий, который требует PS 5.0, и машины, на которых вполне может быть установлена PS2.0 или PS3.0, только когда мой сценарий работает. Я могу автоматизировать обновление PowerShell, но текущий запущенный скрипт не будет использовать исправленную версию PowerShell.
Я мог бы просто потребовать от людей обновления перед запуском сценария, но для моей целевой аудитории это сложное предложение. Я бы предпочел, чтобы мой скрипт (запущенный с повышенными правами) установил обновление, а затем снова запустил сам себя, но с исправленной версией PowerShell.
С этой целью я мог бы ...
- Автоматизировать перезагрузку с однократным входом в систему с учетными данными администратора и запустить текущий скрипт. УЖАСНО, потому что автоматизировать вход в систему с учетными данными администратора плохо. Juju.
- Запустить перезагрузку, которая гарантирует использование новой версии PS, и снова запустить скрипт с теми же аргументами без входа в систему. Но возможно ли запустить сценарий для запуска повышенного предварительного входа в систему? И могу ли я запретить пользователю входить в систему, пока мой сценарий не будет выполнен? Если я перезагружаюсь и запускаюсь до входа в систему, пользователь может реально войти в систему в режиме реального времени, пока обновление еще выполняется. Я рассмотрел способы предоставления сообщения на экране входа в систему, чтобы минимизировать вероятность этого, но в лучшем случае они глупы, и пользователи всегда могут проигнорировать это сообщение.
- Создайте две запланированные задачи, одну для обновления sh PS версия используется, второй для запуска сценария. Зависит от способности реально обновить sh версию PS в использовании. И должен быть выполнимым, используя PS2.0 для создания запланированных задач. Можно ли это сделать? На самом деле это мой предпочтительный вариант, потому что тогда я могу сообщить, что машина все еще обновляется.
- ??? Лучшие идеи, которые я еще не придумал?
- Невозможно сделать, смирись с этим.
Обратите внимание, что я не могу принять сценарии входа, GPO, SCCM или ничего подобного здесь. Я нацеливаюсь на фирмы, которые не имеют такого опыта, и эти варианты просто не являются начальными.
Надеюсь, у кого-то есть какие-то мысли, помимо "Ответ 5".