Powershell: обходные пути политики выполнения для запуска сценария
Есть ли обходной путь для политик выполнения?
PS C:\Users\thufir\Desktop>
PS C:\Users\thufir\Desktop> .\stock.ps1
.\stock.ps1 : File C:\Users\thufir\Desktop\stock.ps1 cannot be loaded because running scripts is disabled on this
system. For more information, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ .\stock.ps1
+ ~~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
PS C:\Users\thufir\Desktop>
Просто ищу котировки акций с помощью скрипта. Да, вы можете сортировать / выполнять скрипт с копированием / вставкой, но... разве нет ничего лучше?
Политика как:
PS C:\Users\thufir\Desktop>
PS C:\Users\thufir\Desktop> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine Undefined
PS C:\Users\thufir\Desktop>
(Не моя машина.)
Ищем обратный к этому вопросу.
1 ответ
Решение
Чтобы создать комментарий Bill_Stewart, создайте ярлык со следующей целью, и он позволит вам запустить скрипт powershell:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -executionpolicy bypass -file "\\Server\Path\to\script\script.ps1"
Если вы хотите выполнить эту команду на удаленном компьютере, вы всегда можете сделать что-то подобное после создания вышеупомянутого ярлыка и его сохранения в месте, где удаленный компьютер может получить доступ к сети.
Invoke-Command -computername Computer1 -Scriptblock { Start-process "\\Server\Path\to\shortcut\shortcut.lnk" }