expect - linux远程执行命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了expect - linux远程执行命令相关的知识,希望对你有一定的参考价值。
需要的文件:
password #远程主机的ip 密码文件
expect #执行远程登录,执行命令的脚本文件
login.sh #shell 脚步调用这两个文件执行操作
#!/bin/bash for i in $(awk ‘{print $1}‘ passwd.txt) #for循环出主机ip信息 do p=$(awk -v I="$i" ‘{if(I==$1)print $2}‘ passwd.txt) #取出对应ip主机的密码 expect /root/login $i $p #传递ip和密码信息到expect done
#!/usr/bin/expect -f set hostname [lindex $argv 0] #传主机ip参数 set passwd [lindex $argv 1] #传主机密码参数 spawn -noecho ssh [email protected]$hostname; #执行ssh远程登录 expect { "*yes/no" { send "yes\r"; exp_continue } #模拟输入确认字段 "*assword:" { send "$passwd\r"; } #模拟输入密码字段 } expect "]#" send "free -m\r" send "df -hT\r" send "exit\r" expect eof
192.168.23.252 123456 #远程主机ip 和密码信息,可以添加多个主机信息一行一条主机信息
执行过程结果:
本文出自 “jinchuang” 博客,请务必保留此出处http://jinchuang.blog.51cto.com/8690689/1947054
以上是关于expect - linux远程执行命令的主要内容,如果未能解决你的问题,请参考以下文章
七十分发系统介绍expect脚本远程登录expect脚本远程执行命令expect传递参数
分发系统-expect讲解,expect脚本远程登录,expect脚本远程执行命令,expect脚本
27 分发系统介绍 expect脚本远程登录 expect脚本远程执行命令 expect脚本传递参数