在远程机器上跑PowerShell脚本

当我们需要在远程机器上跑一些PowerShell命令或者文件的时候,可以运行以下命令

$secpassword = ConvertTo-SecureString "Password" -AsPlainText –Force

$mycreds = New-Object System.Management.Automation.PSCredential ("Username", $secpassword)

Enter-PSSession -ComputerName ComputerName -Credential $mycreds

你可能会遇到以下错误:

Enter-PSSession : Connecting to remote server failed with the following error message : The client cannot connect to th e destination specified in the request. Verify that the service on the destination is running and is accepting requests
. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or Win
RM. If the destination is the WinRM service, run the following command on the destination to analyze and configure the
WinRM service: "winrm quickconfig". For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:16
+ Enter-PSSession <<<< -ComputerName NEB-OM-336757.smx.net -Credential $mycreds
+ CategoryInfo : InvalidArgument: (
ComputerName:String) [Enter-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed

因为你没有在远程机器上开启允许远程执行PowerShell命令导致了这个错误的出现。

你需要在远程机器上用管理员权限打开PowerShell控制台,执行命令Enable-PSRemoting –Force

再执行以上命令界面就会出现,此时你就可以在这个控制台上输入命令执行远程操作了

[ComputerName]: PS C:\Users\asttest\Documents>

注意,这个Session直到PowerShell界面关闭,或者强制退出为止。比如运行Exit-PSSession

 

 

 

 

posted @ 2012-11-20 17:10  Lilideng  阅读(2783)  评论(1编辑  收藏  举报