无法在服务器计算机上的网络中的所有计算机上运行powershell脚本

时间:2014-03-12 09:54:58

标签: powershell

我正在尝试在网络中的所有计算机上运行来自我的服务器计算机的powershell脚本。 首先,我只用一台机器尝试它。

但是,我收到了以下错误:

  

无法加载文件C:\ file.ps1,因为在此系统上禁用了脚本的执行。有关详细信息,请参阅“get-help about_signing”   在线:1字符:27
  + C:\ file.ps1<<<<
      + CategoryInfo:未指定:(:) [],PSSecurityException
      + FullyQualifiedErrorId:RuntimeException

我正在使用以下命令:

D:\Task\PSTools>PsExec.exe remotemachine -u domain\adminuname -p adminpwd cmd.exe \c start

PsExec v2.1 - Execute processes remotely
Copyright (C) 2001-2013 Mark Russinovich
Sysinternals - www.sysinternals.com


Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Windows\system32>powershell.exe "C:\file.ps1"

所以,请你帮助我。

提前致谢。

2 个答案:

答案 0 :(得分:0)

远程计算机需要更改其执行策略以允许脚本运行。在测试过程中,您可能需要执行与在主机上运行脚本相同的操作。

这可以通过组策略或手动(在所有计算机上)完成。

使用PSExec,您可以通过运行Set-ExecutionPolicy cmdlet在各台计算机上设置策略。

答案 1 :(得分:0)

将您的powershell行更改为此选项以绕过本地执行策略:

powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File "C:\file.ps1"