码迷,mamicode.com
首页 > 系统相关 > 详细

linux expect输入用户名和密码

时间:2020-08-19 20:03:48      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:roo   code   wds   变量   命令行   end   linux   类型   cat   

本文主要介绍linux的expect命令,用来自动传入用户名和密码案例。

以登录*为例:
类型一:脚本传入用户名和密码**

cat  /root/expect/***_all_expect
#!/bin/expect

spawn open*** --config /etc/open***/all.o***
expect "Username"
send "xxx\r"  // 这里输入用户名 
expect "Password" 
send "xxx\r" //这里输入密码

interact

类型二:命令行传入密码

cat  /root/expect/***_all_expect
#!/bin/expect

set password [lrange $argv 0 0] // 这里把第一个参数数值赋值给password
spawn open*** --config /etc/open***/all.o***
expect "Username"
send "xxx\r"
expect "Password"
send "$password\r" // 把password变量当作密码传入

interact

[root@wds ~]# expect /root/expect/***_all_expect xxx // xxx即为命令行传入的参数

说明:
[lindex $argv n]获得index为n的参数(index从0开始计算)
$argc为命令行参数的个数
$argv为所有的命令行参数
[lrange $argv 0 0]表示第一个参数
[lrange $argv 0 3]表示第1到第3个参数

命令行参数demo

[root@wds home]# expect expect-exec zhangsan 20
zhangsan
20
zhangsan 20

[root@wds home]# cat expect-exec 
#!/bin/expect
set name [lrange $argv 0 0]
set age  [lrange $argv 1 1]
puts $name
puts $age
puts $argv
[root@wds home]#

linux expect输入用户名和密码

标签:roo   code   wds   变量   命令行   end   linux   类型   cat   

原文地址:https://blog.51cto.com/wendashuai/2520873

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!