如何使用 EXPECT 和 Bash 脚本在远程服务器中运行本地脚本



我想自动化我的支持工作。我想制作一个脚本,该脚本将连接到服务器并在服务器上执行一些 CRUD 操作,然后再次返回到本地计算机。我不想上传脚本。到目前为止,我已经制作了一个脚本来帮助连接到服务器,但我无法通过任何其他操作。是否可以在远程服务器上运行本地脚本?

我的脚本:

!/usr/bin/expect 
  set ip neviss
  set user user 
  set password 1234 
  spawn ssh "$user@$ip" 
  expect "Password:" 
  send "$passwordr"; 
  interact ( after this line any command is not getting executed) 
  ls -lrt

你可以这样做:

ssh user@remote-ssh-server "commands of script" 

如果将脚本保存到文件中,则可以执行以下操作:

ssh user@remote-ssh-server << End
paste the script here
End

以下是一些细节。

  1. 使用"ssh your_user@ssh_server ls /"登录

此命令将登录,列出根目录,然后关闭连接。

  1. 第一次传递成功后,尝试将"ls/"替换为脚本。

  2. 第二步成功后,启动 ssh 代理。

不要在完成第一步之前传递到步骤 2。

使用像这样的 ssh 教程 - 这将帮助你

http://support.suso.com/supki/SSH_Tutorial_for_Linux

脚本结构应为:

  1. 通过固态安全与安全连接。
  2. 克鲁德操作
  3. 退出 SSH。

具有 CRUD 操作的脚本必须位于远程计算机上,因为不能运行任何不在要运行它的计算机上的脚本。

ssh user@server bash < /path/to/local/script.sh

相关内容

  • 没有找到相关文章

最新更新