加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 使用expect脚本自动化多个文件的SCP

发布时间:2020-12-13 19:25:17 所属栏目:Linux 来源:网络整理
导读:所以我看到了很多帖子,也许我还没有看到正确的帖子. 我正在使用expect脚本将我的语言环境中的多个文件scp到远程.我不想为无密码登录设置密钥,因为那时服务器不能被吹走而且站起来做更多的工作,是的我可以自动创建密钥,我只是不愿意.所以我希望能够使用*但每
所以我看到了很多帖子,也许我还没有看到正确的帖子.

我正在使用expect脚本将我的语言环境中的多个文件scp到远程.我不想为无密码登录设置密钥,因为那时服务器不能被吹走而且站起来做更多的工作,是的我可以自动创建密钥,我只是不愿意.所以我希望能够使用*但每次我使用*它告诉我.我想使用*而不是全名的原因是因为版本号会不断变化,我不想每次都手动更改脚本.

/path/{Install.sh,programWithVerionAfter*}: No such file or directory

Killed by signal 1.

我希望这是一个简单的解决方法或解决方法.我想做的就是scp这些文件,这样我只需点击一下按钮就可以自动完成安装过程.预先感谢您的任何帮助

#!/usr/bin/expect -f

spawn scp /path/{Install.sh,programWithVerionAfter*} "root@IP:/tmp/.
expect {
   -re ".*es.*o.*" {
   exp_send "yesr"
   exp_continue
  }
  -re ".*sword.*" {
    exp_send "Passwordr"
  }
}
interact

解决方法

我找到了更多google的东西.谢谢你的帮助,希望这有助于他人

http://www.linuxquestions.org/questions/linux-general-1/scp-with-wildcard-in-expect-834813/

#!/usr/bin/expect -f

spawn bash -c "scp /path/* root@IP:/tmp/"
expect {
  -re ".*es.*o.*" {
    exp_send "yesr"
    exp_continue
  }
  -re ".*sword.*" {
    exp_send "Passwordr"
  }
}
interact

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读