通过将密码与 Commnad 一起传递使用 powerShell 脚本的 ssh

iss*_*ohn 3 ssh powershell

如果我输入,我可以从 PowerShell SSH 到服务器

ssh 用户名@主机

这会提示输入密码,我输入有效的密码

但是我正在尝试编写一个脚本,该脚本通过 ssh 进入服务器执行一些脚本并返回

所以我必须将密码与命令一起传递我该怎么做

shell 脚本有很多答案我如何在 PowerShell 中执行此操作

我试过了

echo "密码" | SSH 用户@主机

似乎不起作用

Ami*_*nes 12

您可以使用POSH-SSH 模块

代码片段:

$Password = "Password"
$User = "UserName"
$ComputerName = "Destination"
$Command = "SSH Command"

$secpasswd = ConvertTo-SecureString $Password -AsPlainText -Force
$Credentials = New-Object System.Management.Automation.PSCredential($User, $secpasswd)

$SessionID = New-SSHSession -ComputerName $ComputerName -Credential $Credentials #Connect Over SSH

Invoke-SSHCommand -Index $sessionid.sessionid -Command $Command # Invoke Command Over SSH
Run Code Online (Sandbox Code Playgroud)

更新:

3 年后,微软发布了PowerShell remoting over SSH.

更多信息可以在这里找到。

  • 伙计 非常感谢,我一整天都在尝试这样做,我是新手,所以我不能投票给你的答案 但它有效 非常感谢 (2认同)