Powershell 通過SSH 執行遠程命令


類似Linux,powershell 也支持執行遠程命令,windows2019 默認的powershell 5 也支持簡單的命令,但是需要穩定的支持還是需要更高版本的powershell. 看你的powershell 是否支持遠程命令

(Get-Command New-PSSession).ParameterSets.Name  // 輸出帶SSH的就支持,看下windows 2019 默認是否支持? windows2019 不支持,需要安裝最新的powershell 7 
Name
----
SSHHost
SSHHostHashParam

 

 Github 上下載最新開源的powershell 7,安裝的選項里面有是否支持遠程SSH,我都勾上了,覺得方便。

 

 

 

 

注意,把部署程序的Server 的默認 powershell 換成最新的poweshell7 . jenkins slave 機器還是需要默認的bat 為默認的shell,不要修改,jenkins 里面的腳步原來調用是 powershell  """xxx"""  ,現在改為 pwsh """xxx""" .

 

 

 現在應該支持遠程命令調用了

創建托管遠程計算機上的 PowerShell 進程的 SSH 子系統: 

Subsystem powershell c:/progra~1/powershell/7/pwsh.exe -sshs -NoLogo  這句話是修改 server 端的 sshd_config 里面的內容

 

 使用 ssh 遠程操作

 

 進入 $session , 就已經得到遠程的shell.

 

 退出$session, Exit-PSsession 回到終端。

 

 在本地終端執行遠程命令 

Invoke-Command $session -ScriptBlock { Get-Process pwsh }

 

 

Reference : https://docs.microsoft.com/zh-cn/powershell/scripting/learn/remoting/ssh-remoting-in-powershell-core?view=powershell-7.1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM