20.27 分发系统介绍

shell项目-分发系统-expect

20.28 expect脚本远程登录

1. 安装expect

[root@hao-01 ~]# yum install -y expect

自动远程登录

2. 创建配置1.expect脚本(远程登录)

[root@hao-01 ~]# vim 1.expect

添加内容(自动远程登录hao2机器并执行命令)

#! /usr/bin/expect

set host "192.168.211.129"

set passwd "admin"

spawn ssh root@$host

expect {

"yes/no" { send "yes\r"; exp_continue}

"password:" { send "$passwd\r" }

}

interact

3. 增加1.expect脚本x权限

[root@hao-01 ~]# chmod a+x 1.expect

4. 执行1.expect脚本(远程登录)

[root@hao-01 ~]# ./1.expect

20.29 expect脚本远程执行命令

自动远程登录后执行命令并退出

1. 远程hao2机器,创建/tmp/12.txt文件,追加重定向1212到/tmp/12.txt文件:

[root@hao-01 ~]# vim 2.expect

添加内容:

#!/usr/bin/expect

set user "root"

set passwd "admin"

spawn ssh $user@192.168.211.129

expect {

"yes/no" { send "yes\r"; exp_continue}

"password:" { send "$passwd\r" }

}

expect "]*"

send "touch /tmp/12.txt\r"

expect "]*"

send "echo 1212 > /tmp/12.txt\r"

expect "]*"

send "exit\r"

2. 增加2.expect脚本x权限

[root@hao-01 ~]# chmod a+x 2.expect

3. 执行2.expect脚本

[root@hao-01 ~]# ./2.expect

20.30 expect脚本传递参数

传递参数

1.

[root@hao-01 ~]# vim 3.expect

添加内容:

#!/usr/bin/expect

set user [lindex $argv 0]

set host [lindex $argv 1]

set passwd "admin"

set cm [lindex $argv 2]

spawn ssh $user@$host

expect {

"yes/no" { send "yes\r"}

"password:" { send "$passwd\r" }

}

expect "]*"

send "$cm\r"

expect "]*"

send "exit\r"

2. 增加3.expect脚本x权限

[root@hao-01 ~]# chmod a+x 3.expect

3. 执行3.expect脚本

远程登录到指定用户名 主机ip 执行的多个命令(ls;w)

[root@hao-01 ~]# ./3.expect root 192.168.211.129 "ls;w"

转载于:https://blog.51cto.com/zhuneianxiang/1967098

20.27分发系统介绍;20.28expect脚本远程登录;20.29expect脚本远程执行命令;20.30expect脚本传递参数...相关推荐

  1. 20.27 分发系统介绍 20.28 expect脚本远程登录 20.29 expect脚本远程执行

    20.27 分发系统介绍 20.28 expect脚本远程登录 20.29 expect脚本远程执行命令 20.30 expect脚本传递参数 20.27 分发系统介绍 分发系统,什么叫分发系统,首先 ...

  2. 【Java】Java编写Telnet客户端,连接到Windows的Telnet服务器,执行命令和批处理脚本

    Java编写Telnet客户端,连接到Windows的Telnet服务器,执行命令和批处理脚本,同时解决了中文乱码的问题. 源代码和Jar包在这里下载:http://download.csdn.net ...

  3. Python 实现远程服务器(ssh)批量执行命令

    paramiko 远程控制介绍 Python paramiko是一个相当好用的远程登录模块,采用ssh协议,可以实现linux服务器的ssh远程登录.首先来看一个简单的例子 import parami ...

  4. 我写了一个脚本,可在“任意”服务器上执行命令!

    冰河之前维护着上千台服务器组成的服务器集群,如果每次需要在服务器上执行命令的时候,都要手动登录每台服务器进行操作的话,那也太麻烦了.你想想,如果在上千台服务器的集群中,每台服务器中只需要简单的执行一个 ...

  5. 设置服务器系统的远程登录数量,设置服务器远程登录用户数量

    设置服务器远程登录用户数量 内容精选 换一换 安装MySQL本文档以"CentOS 6.5 64bit(40GB)"操作系统为例,对应MySQL版本为5.1.73.CentOS 7 ...

  6. linux脚本开机自动执行脚本文件,如何让linux开机自动执行sata里头的脚本文件

    基本步骤如下:1.创建包含sql命令的sql脚本文件文件中包含一些列的sql语句,每条语句最后以;结尾,文件内容示例如下:--创建表,使用"--"进行注释create table ...

  7. 在linux设置Mysql允许用户远程登录和限制用户远程登录

    允许用户远程登录: use mysql;update user set host = '%' where user = 'root';select host, user from user;flush ...

  8. windows Server 2016 开启远程登录和多用户同时远程登录

    转载连接: 开启远程登录: windows Server 2016 开启远程登录_idomyway的博客-CSDN博客前言    windows Server 2016 开启远程登录解决方法     ...

  9. Jenkins学习(执行命令路径,脚本上传静态html代码)(一)

    Jenkins的安装 可参考https://www.cnblogs.com/yangzp/p/12953810.html sudo wget -O /etc/yum.repos.d/jenkins.r ...

最新文章

  1. HTML 5中SEO可以用那些代码来做优化
  2. .net remoting在wpf中的应用
  3. c语言结构体输入身高体重,c++:输入n名学生的身高体重,按身高排序输出并计算平均体重和身高...
  4. sql 数组三 展平数组
  5. CVPR 2022 57 篇论文分方向整理 + 打包下载|涵盖目标检测、语义分割、人群计数、异常检测等方向
  6. 与Maven 3,Failsafe和Cargo插件的集成测试
  7. matlab系统的初始条件,指定总线信号的初始条件
  8. 多元分类SVM(多类别SVM)程序使用说明
  9. ansible 循环与条件判断when
  10. await和async
  11. 代理IP软件如何只切换浏览器IP地址
  12. innobackupex备份与恢复
  13. latex ctex 中文目录在pdf阅读器的“书签”选项卡中显示乱码的解决方法
  14. MySQL学习2:表的创建和增删改
  15. 高等教育心理学:学生的个性与社会性的发展
  16. Qt5:报错error: 'tr' was not declared in this scop
  17. php 跳转邮箱,JS简单实现点击跳转登陆邮箱功能的方法
  18. ubuntu16.4离线安装显卡驱动
  19. ESP8266驱动1.44寸TFT屏幕(例程问题)
  20. 机械中计算机的应用研究,机械设计制造自动化中计算机技术的应用

热门文章

  1. 李彦宏/王坚/王传福等上榜“中国工程院2019院士增选候选人”引争议,实至名归吗?...
  2. 腾讯再次海选AI项目,1500进40,医疗零售机器人成新风向
  3. 开源代码却无奈遗弃,濒临奔溃的开源开发者们!
  4. 烦人的Null,你可以走开点了
  5. 初探莫比乌斯反演及欧拉反演
  6. 在Flash中利用PCRE正则式漏洞CVE-2015-0318的方法
  7. IT小妙招之:快马加鞭,Windows 7启动大提速
  8. 莫等闲,白了少年头,空悲切!
  9. render函数高级组件jsx基本使用
  10. Django REST framework API 指南(2):响应