#!/usr/bin/expect -f
#auto ssh login
set timeout 30
set sshhost [lindex $argv 0]
set sshport [lindex $argv 1]
set sshusername [lindex $argv 2]
set sshpassword [lindex $argv 3]
set sshsource_directory [lindex $argv 4]
# echo $sshhost
# set sshhost 106.3.226.132
spawn ssh -l$sshusername -p$sshport $sshhost
expect {
"not know" {send_user "[exec echo \"not know\"]";exit}
"(yes/no)?" {send "yes\r";exp_continue}
"password:" {send "$sshpassword\r"}
"Permission denied, please try again." {
send_user "[exec echo \"Error:Password is wrong\"]"
exit
}
expect eof
}
#iexpect "password:"
#send "$sshpassword\r"
expect "]*"
send "cd $sshsource_directory\r"
send "ls |grep csv$|xargs bzip2 -z\r"
#send "tar -cjvf visitlog.2014-07-10_08.csv.tar.bz2 visitlog.2014-07-10_08.csv\r"
send "exit\r"
interact
分享到:
相关推荐
bash 调用expect ssh到cisco设备,通过tftp方式备份配置 已经测试通过,并上到生产服务器 前提要先架设好TFTP服务器并测试通过
在ssshHost.sh脚本中封装expect的ssh登录自动填充密码功能
ssh自动连接脚本,使用了expect自动化交互以及mail邮件提醒功能。本人亲自实践,希望有助于大家。
expect是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预。说白了,expect就是一套用来实现自动交互功能的软件。 在实际工作中,我们运行命令、脚本或程序时,这些命令、脚本或程序都需要从终端...
Pexpect 的使用范围很广,可以用来实现与 ssh、ftp 、telnet 等程序的自动交互;可以用来自动复制软件安装包并在不同机器自动安装;还可以用来实现软件测试中与命令行交互的自动化。 整体来说大致的流程包括: 运行...
expect是一个基于Tcl的用于自动交互操作的工具语言,它适合用来编写需要交互的自动化脚本,比如上面提到的SSH输入...下面这篇文章主要给大家介绍了关于Linux expect实现自动登录脚本的相关资料,需要的朋友可以参考下。
<expect>交互试软件的脚本 可以写SSH登陆的脚本,实现一些shell实现不了的功能
python expect工具。 自动交互完成: 1. 批量并行scp/rsync 2. 批量并行ssh并执行命令 3. 挨个自动ssh,退出(ctrl-D、exit)后,自动登入下一台机器
借助Expect,我们可以将交互过程写在一个脚本上,使之自动化完成。形象的说,ssh登录,ftp登录等都符合交互的定义。下文我们首先提出一个问题,然后介绍基础知四个命令,最后提出解决方法。 expect中最关键的四个...
1. 自动ssh/scp方法 A为本地主机(即用于控制其他主机的机器) ;B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;A和B的系统都是Linux 在A上运行命令:# ssh-keygen -t rsa (连续三次回车,即在本地生成了...
perl ssh 程序,一个不错的例子!! 用了net::ssh::expect
一、概述 ...Expect的作者Don Libes在1990年 开始编写Expect时对Expect做有如下定义:Expect是一个用来实现自动交互功能的软件套件 (Expect [is a] software suite for automating interactive tools)
适用与centos7.5的expect,expect 处理交互的命令,可以将交互过程如 ssh 登录, ftp 登录等写在一个脚本上,使之自动化完成。尤其适用于需要对多台服务器执行相同操作的环境中,可以大大提高系统管理员的工作效率
Paramiko Expect为Paramiko SSH库提供了一个类似于期望的扩展,该脚本库允许脚本通过真正的SSH连接与主机进行完全交互。 该类由SSH客户端对象构造(将来可能会扩展为支持传输,以提供更大的灵活性)。 快速开始 要...
主要介绍了Shell脚本实现自动输入密码登录服务器,本文使用expect来实现这个需求,讲解了expect的安装及使用脚本,需要的朋友可以参考下
WINDOWS平台EXPECT,可用于ssh登录等交互,找了好久才弄到的。。
参考expect4j的交互式操作方式控制输入输出流实现批量执行多条shell命令同时支持切换用户输入密码提权执行命令输入密码等操作 有完整的测试用例,便于理解 模板化执行命令示例 [$]send[su - root] [Password:]...
如果没有其他身份验证选项可用,则在通过Jumphost设置到目标主机的穿梭连接时,Expect脚本可用于自动进行输入密码和TOTP代码的交互过程。 将为您填写的命令和提示示例: sshuttle -r [local sudo] Password: ...
实现交互式保存主机密钥,进行ssh连接,通过expect自动进行主机登录,减少了每次连接的麻烦。