#!/usr/bin/expect -f
set password kettle
set timeout 10
foreach server { 25 26 27 29 30 31 168 169 170 172 } {
set ip 10.10.1.$server
spawn ssh kettle@10.10.1.$server
expect {
"*yes/no" { send "yes\r"; exp_continue}
"*password:" { send "$password\r" }
}
expect "*$"
# into the directory
send "cd /home/kettle/data-integration/ \r"
# send the command to start the get_data task
send "python gather.py $server 1 2 >> pythonScriptError.log & \r"
send "exit\r"
expect eof
}
#!/usr/bin/expect -f
#echo $1
set password kettle1
set timeout 10
spawn ssh kettle@10.10.1.[lindex $argv 0]
expect {
-re "Permission denied, please try again." {
send_user "Error:Permission denied.\n"
exit 1 }
-re "Connection refused" {
exit 1 }
timeout { exit 1 }
eof { exit 0 }
-re "Are you sure you want to continue connecting (yes/no)?" {
send "yes\r";exp_continue }
-re "password:" {
send "$password\r";exp_continue }
}
expect "*$"
# into the directory
send "cd /home/kettle/data-integration/ \r"
# send the command to start the get_data task
#send "python gather.py $server 1 2 >> pythonScriptError.log & \r"
send "exit\r"
expect eof
分享到:
相关推荐
以下是一个使用expect实现自动化文件传输的脚本示例: ```bash #!/usr/bin/expect -- # 参数说明: # $1 - 远程服务器的用户名 # $2 - 登录密码 # $3 - 远程服务器的IP地址 # $4 - 本地文件路径 # $5 - 远程文件...
Expect脚本安装和简单脚本示例 Expect脚本是一种强大的自动交互工具,它可以模拟用户的交互行为,自动输入密码、命令等,从而实现自动化任务。下面是 Expect 脚本的安装和简单脚本示例。 Expect 脚本安装 --------...
以下是一段简单的Expect脚本示例,用于演示如何实现自动拨号连接: ```tcl # 首先给用户一点时间登出当前的会话 exec sleep 4 # 启动拨号程序 spawn tip modem # 等待“*connected*”提示符出现 expect "*connected...
下面是一个简单的expect脚本示例,演示如何使用expect自动登录到一台远程主机并执行命令: ```tcl #!/usr/bin/expect # 定义变量 set host "192.168.1.100" set username "root" set password "mypassword" # ...
下面是一段简单的expect脚本示例,用于SSH登录远程服务器: ```tcl #!/usr/bin/expect spawn ssh user@example.com expect "password:" send "your_password\r" expect "$ " send "ls -l \r" expect "$ " send ...
下面是一段简单的Expect脚本示例: ```bash #!/usr/bin/expect spawn ssh user@example.com expect "Password:" send "yourpassword\n" expect "$ " send "ls -l\n" expect "$ " interact ``` 在这个例子中,`...
从标题“linux-expect”及描述“这个是一个不错的expect脚本文档学习典例,大家可以下载学习。”中可以看出,这份文档是关于如何在 Linux 系统中使用 Expect 脚本来自动化交互式任务的一个学习资源。 ### 一、...
例如,以下是一个简单的Expect脚本示例,用于自动登录SSH服务器: ```tcl #!/usr/bin/expect spawn ssh user@example.com expect "password:" send "your_password\r" expect "$ " interact ``` 在这个脚本中,`...
下面是一个简单的Expect脚本示例,展示如何使用Expect与SSH服务进行交互: ```tcl #!/usr/bin/expect spawn ssh user@host expect "password:" send "mypassword\r" expect "$" send "ls\r" expect "$" send "exit\...
通过使用 Expect,可以将原本需要手动进行的操作,例如 SSH 登录、FTP 登录等,编写成脚本自动执行。这在需要对多台服务器执行相同操作的场景下尤其有用,能够显著提高系统管理员的工作效率。 ### 2. 安装 Expect ...
为了更好地解释Expect程序的使用方法,文章给出了一个简单的Expect脚本示例。这个脚本的主要功能是将用户的登录shell更改为tcsh。通过这个示例,读者可以了解到Expect脚本的基本结构和命令使用方法,如何通过Expect...
下面是一个简单的Expect脚本示例,演示如何自动登录SSH服务器: ```tcl #!/usr/bin/expect spawn ssh user@example.com expect "password:" send "your_password\n" expect "$ " send "ls -l\n" expect "$ " send ...
### Expect脚本学习教程与范例 #### 一、Expect简介及应用场景 **Expect** 是一个免费且强大的编程工具,主要用于实现自动化与交互式的任务处理,尤其适用于那些原本需要人工干预的任务。它允许用户创建脚本来自动...
以下是一个基本的SSH登录脚本示例: ```bash #!/usr/bin/expect spawn ssh user@example.com expect "password:" send "your_password\n" expect "$ " interact ``` 在这个脚本中,`spawn`命令启动一个进程,这里...
例如,给出的Expect脚本示例展示了如何自动登录远程服务器并执行命令。这种方式对于需要交互式操作的情况非常有用,但缺点是执行速度较慢,因为它是逐台服务器进行操作,可能不适应大规模并发的需求。 针对以上两种...
- **解决方案:** 编写Expect脚本,利用脚本中的循环结构,实现文件的批量传输。 ##### 2. **远程系统管理** - **背景:** 网络管理员需要定期登录多台服务器进行检查或更新配置。 - **解决方案:** 使用Expect...
《使用 Expect 脚本实现自动化交互操作》 在 IT 领域,尤其是在系统管理和自动化运维中,Expect 是一个非常实用的工具。 Expect 软件允许编写脚本模拟用户与命令行程序的交互,尤其适用于那些需要输入密码、等待...
另外,`lj`编写的`expert脚本.sh`是一个实际的示例,通过阅读和分析这个脚本,可以更直观地理解`expect`的工作原理和应用。 总之,`expect`是Linux自动化中的重要工具,它使脚本能够与用户界面进行交互,极大地扩展...
以下是一个基本的`ssh_expect`脚本示例: ```bash #!/usr/bin/expect -f set hostname [lindex $argv 0] set user [lindex $argv 1] set passwd [lindex $argv 2] set timeout 30 set force_conservative 1 # 如果...
下面是一个简单的expect脚本示例(名为scp.exp),用于实现自动输入密码的scp命令: ```bash #!/usr/bin/expect set timeout 20 if { [llength $argv] puts "Usage:" puts "$argv0 local_file remote_path" ...