使用sshpass,如何在登录的服务器上工作

使用sshpass,如何在登录的服务器上工作

我是 shell 脚本的新手。我尝试通过sshpass -p "YOUR_PASSWORD" ssh -o StrictHostKeyChecking=no YOUR_USERNAME@SOME_SITE.COM命令登录服务器,并且已成功登录。

我的问题是如何在同一个登录服务器上进一步工作(传递更多命令)?

答案1

ssh 允许在远程运行命令

ssh 用户@服务器“命令”

sshpass 实际上只是为您输入密码即可运行 ssh。因此您可以像通过 ssh 一样调用命令。

sshpass -p “您的密码” ssh -t -o StrictHostKeyChecking=no YOU​​R_USERNAME@SOME_SITE.COM “命令 ; bash”

答案2

根据您对 Ibrahim 的评论,当您运行命令“cd /home/abc/xyz”时,它将仅针对您通过 ssh 命令建立的远程连接创建的特定 bash 会话运行。如果您想远程运行命令,您应该使用以下命令来满足您的要求。

ssh YOUR_USERNAME@SOME_SITE.COM "command"

如果您想一次运行更多命令,请在命令之间使用 && 。示例如下

ssh YOUR_USERNAME@SOME_SITE.COM "command1 && command2 && command3"

了解 && 和 ||在互联网上了解更多有关相同的信息。

相关内容