expect 自动登录ssh、mysql 不用记密码了

在需要交互的命令行中,比如登录mysql,需要输入mysql密码。

其实我们可以利用expect自动交互命令实现mysql登陆

1、安装`expect`

`yum install expect`

2、编写脚本

```
cat expect.sh
#!/usr/bin/expect -f
spawn mysql -uroot -p
expect "enter password"
send "123456\n"
interact
spawn su - root
expect "Password:"
send "123456\n"
interact
```

第一行代码代表在哪个路径寻找expect脚本命令。

第三行代码通过spawn执行后面的shell命令。

第四行代码代表通过expect捕捉spawn执行命令的结果。

第五行代码通过send会将expect脚本需要的信息发送给spawn启动的那个进程。

最后一行代码代表执行完保持交互状态,把控制权交给控制台,不然会退出。

    A+
发布日期:2020年10月26日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: