現在我需要使用運行在遠程機器上做了一些部署工作的腳本:如何遠程計算機本身使用PowerShell
Invoke-Command -ComputerName $hostName -Credential $cred -ScriptBlock $scriptBlock
而且如果$ hostname是調用此命令的計算機,它報告:
message : Access is denied. For more information, see the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (myMachineName:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : AccessDenied,PSSessionStateBroken
我想以統一的方式運行命令,不管它是遠程還是本地機器。
更新: 我在Azure中使用一臺機器。此命令的工作:
Invoke-Command -ComputerName XXX -Credential $cred -ScriptBlock $scriptBlock
但是這一次沒有:
Invoke-Command -ComputerName XXX.cloudapp.net -Credential $cred -ScriptBlock $scriptBlock
任何人可以幫助?
編寫一個可以包裝'Invoke-Command'的輔助命令行,檢查目標計算機,如果它是本地計算機,請不要傳遞'-ComputerName'參數? – n0rd
也許我錯過了一些東西,但我可以使用invoke-command和計算機名稱作爲調用此命令的計算機。我在3.0版本。 –
謝謝你nrd和CB。我在Azure中使用虛擬機,並已更新問題。 –