Use expect command to interact with mysql in linux system

原创 2013年12月02日 10:43:59

The "expect" command is not install in some linux system default , in the ubuntu system , you can simplly tap "sudo apt-get install expect" to install this tool.

And then , if you want to use to in the shell script , the first line maybe like this:

#!/use/bin/expect

It just like bash or sh . check the example below:

$:~/test$ expect
expect1.1> spawn mysql -h localhost -u db_runner -p
spawn mysql -h localhost -u db_runner -p
27022
expect1.2> expect "password:"
Enter password: expect1.3> send "mysqlpassword\r"
expect1.4> expect "mysql>"

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 88
Server version: 5.5.34-0ubuntu0.13.04.1 (Ubuntu)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> expect1.5> send "show databases;\r"
expect1.6> expect "mysql>"
show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
9 rows in set (0.00 sec)

mysql> expect1.7> send "exit;\r"
expect1.8> expect "mysql>"
exit;
Bye

expect语法基础: while、for 循环、if 语句的用法示例

==两种for循环的写法 for {set i 0} {$iincr i 1。注意这个反括号一定要写在这行行末:args: should be "for start test next comm...
  • wjciayf
  • wjciayf
  • 2017年01月13日 15:11
  • 873

用了一天的时间,linux下expect实现ssh自动登录服务器记,鄙视下网上各种抄来抄去残段子

因为要对客户方的快30个项目进行特别有顺序的重启,所以不得不想办法写个脚本,网上看了不少段子。真是残缺的可以。没有一段是可以正常运行的。我来按顺序记录一下脚本的本身使用expect实现自动登录的脚本,...
  • hjm4702192
  • hjm4702192
  • 2015年03月12日 16:34
  • 2641

Linux_Shell 利用ssh, expect 在多个机器上执行指令

相关的基础指令介绍 ssh :     http://www.jb51.net/article/59255.htm  (ssh 命令 --》 远程终端执行指令部分) expect : http:/...
  • u010003835
  • u010003835
  • 2016年12月15日 16:35
  • 1977

Perl脚本中Expect模块的学习使用

Expect模块可以用来向需要交互执行的程序输入必要的信息。以脚本形式实现交互式应用程序的语言。代码:$exp = new Expect;new一个Expect.$exp->spawn($comman...
  • jichenchen1990
  • jichenchen1990
  • 2017年07月25日 11:22
  • 555

expect学习笔记及实例详解

引用自:http://wenku.baidu.com/view/b65e103610661ed9ad51f374.html 1. expect 是基于tcl 演变而来的,所以很多语法和tcl 类似...
  • guofatfat
  • guofatfat
  • 2014年01月29日 10:53
  • 5454

Linux使用expect实现免手工密码输入

使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄、收藏。可是为什么要这么写却不知其然。本文用一个最短的例子说明脚本的原理。    脚本代码如下:    ...
  • xhu_eternalcc
  • xhu_eternalcc
  • 2015年07月27日 11:10
  • 948

Linux-expect命令详解

Expect (主页http://expect.nist.gov/) 是用于提供自动交互的工具。比如你要用ssh或者 telnet登录服务器的时候,命令行下提示需要输入用户和密码等。如果叫你用shel...
  • jacky0922
  • jacky0922
  • 2015年04月16日 10:38
  • 6482

linux中expect的使用

核心 1、什么是expect 2、expect原理 3、expect的案例 4、expect注意事项1、expect是什么 使用Linux的程序员对输入密码都不会陌生,在Linux下对用户有...
  • paicMis
  • paicMis
  • 2017年03月01日 22:31
  • 831

每次进步一点点——linux expect 使用

介绍expect是建立在tcl基础上的一个工具,它可以让一些需要交互的任务自动化地完成。相当于模拟了我们和命令行的交互操作。 一个具体的场景:远程登陆服务器,并执行命令...
  • houmou
  • houmou
  • 2016年11月09日 17:19
  • 4388

expect 中的回车和换行

在 expect 的相关资料中, send 最后都追
  • robertsong2004
  • robertsong2004
  • 2014年09月01日 22:57
  • 5915
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Use expect command to interact with mysql in linux system
举报原因:
原因补充:

(最多只允许输入30个字)