如果我输入,我可以从 PowerShell SSH 到服务器
ssh 用户名@主机
这会提示输入密码,我输入有效的密码
但是我正在尝试编写一个脚本,该脚本通过 ssh 进入服务器执行一些脚本并返回
所以我必须将密码与命令一起传递我该怎么做
shell 脚本有很多答案我如何在 PowerShell 中执行此操作
我试过了
echo "密码"| SSH 用户@主机
似乎不起作用
最佳答案
您可以使用 POSH-SSH module 。
代码片段:
$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
更新:3 年后,微软发布了
PowerShell remoting over SSH
。可以找到更多信息 here 。
关于powershell - 通过将密码与命令一起传递来使用 powerShell 脚本 ssh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54923868/