Можно ли запустить сценарий PowerShell версии 4.0 на сервере Windows с помощью сценария powershell версии 2.0? Я разработал скрипт с использованием PowerShell версии 4.0 на локальном сервере. Теперь я хочу протестировать этот скрипт на сервере разработки Windows, установленном с PowerShell версии 2.0. Может ли этот скрипт 4.0 работать на сервере Dev со скриптом версии 2.0?
3 ответа
вы можете запустить любой скрипт PowerShell в любой системе, в которой установлен PowerShell, за исключением случаев, когда выполняется одно из двух следующих условий:
Ваша ExecutionPolicy не настроена должным образом, и вы не можете запустить какой-либо сценарий, например, если для него установлено значение "AllSigned" и ваши сценарии не подписаны
Автор скрипта установил оператор
#requires
наподобие#requires -version 4
тогда вы можете запускать скрипт только в определенной версии или выше.
в противном случае выполнение любого сценария должно быть возможным, но если автор сценария использовал командлеты, параметры или псевдонимы, которые не были доступны в более ранних версиях, возможно, сценарий не выполняет то, что вы хотите, и выдает / пишет ошибку , Вот почему автор всегда должен устанавливать утверждение #requires
Да, если вы используете функции, командлеты и т.д., Которые были доступны в версии 2.
Не зная, какие командлеты, функции и операторы вы используете - мы не можем сказать наверняка.
Файл сценария PowerShell (* .ps1) попытается выполнить в любой версии PowerShell. Работает ли это или нет, зависит от того, на что оно ссылается.
Вот список материалов, представленных в версиях PowerShell, которые либо отсутствовали, либо работали по-другому в более ранних версиях: https://technet.microsoft.com/en-gb/library/hh857339.aspx
Если вы ссылаетесь на что-либо в этом списке, которое не поддерживается, вам нужно будет найти альтернативные способы ведения дел.