1-26-1-expect无交互式-正则表达式】的更多相关文章

大纲: 1.expect环境搭建及脚本编写 概述 expect脚本详解 expect环境搭建 expect脚本实现ssh远程连接 expect脚本实现ssh远程连接(通过shell传递参数) 2.正则表达式详解及实例 详解 普通正则 扩展正则 案例 1.expect环境搭建及脚本编写 一.概述 我们通过Shell可以实现简单的控制流功能,如:循环.判断等. 但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如ssh服务器等进行交互的功能. expect就使用来实现这种…
1.背景 在面向shell编程时对于需要交互的场合则必须通过人工来干预,而对于这种方式是违反无人职守的原则:现在expect就解决了这个问题, Expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预. Expect是在Tcl基础上创建起来的,用来做一些linux下无法做到交互的一些命令操作,在远程管 理方面发挥很大的作用. spawn命令激活一个Unix程序来进行交互式的运行.     send命令向进程发送字符串.    expect 命令等待进程的某些字符串.…
我在上一篇博文linux之SSH密钥认证 提过ssh之间的相互认证,但是每次使用ssh登录到其它服务器还是要输入密码的. expect是用于提供自动交互的工具,自动连接被管理的服务器,不需要手动输入密码. 1.安装expect [root@mg ~]# yum install -y expect 2.编写expect脚本,直接分发SSH公钥,不用手工输入密码. vim /server/scripts/expect.exp #!/usr/bin/expect #-------------CopyR…
#!/usr/bin/expect -f ##告诉解释器用expect来解释 set timeout 6 ##设置超时时间 ] ## 这个是传递给脚本的第一个参数,并把参数赋值给user ] ## 这个是传递给脚本的第二个参数,依次类推 ] spawn ssh $user@$ip ##spawn的意思是执行这个命令 expect { ##expect是指期待获得什么值,如果多行,请用'{' "yes" { send "yes\r" ##如果是得到的字符串中有yes的…
#!/usr/bin/expect set ip '192.168.4.5' set ' set timeout spawn ssh root@$ip expect { "yes/no" {send "yes\r";exp_continue} "password:" {send "$pwd\r"} } interact # 保持在远程终端 #!/usr/bin/expect set ip [lindex $argv ] # 第…
目录 1 SSH批量分发管理 1.1 测试环境 1.2 批量管理步骤 1.3 批量分发管理实例 1.3.1 利用sudo提权来实现没有权限的用户拷贝 1.3.2 利用sudo提权开发管理脚本 1.3.3 利用rsync来实现增量备份 1.4 SSH批量管理分发脚本实战 1.5 SSH批量管理总结 2 非交互式expect 2.1 非交互式生成密钥及实现批量管理 2.2 一键批量安装httpd服务 2.3 一键自动化50台规模集群网站 1 SSH批量分发管理 基于口令的,如何实现批量管理:expe…
参考: http://www.cnblogs.com/lzrabbit/p/4298794.html expect是linux系统中可以和子进程进行交互的一个命令,使用它可以做一些自动化工作.python中也有一个模块pexpect,提供了类似的功能. 例如:使用ssh登陆需要输入密码,可以使用expect代替手工输入. 例如:使用passwd修改账户密码,也可以使用expect代替. expect用多种执行方式,交互式,执行文件,执行命令. 1.交互式 在命令行输入expect进入交互式 常用…
原地址:http://pfeishao.blog.163.com/blog/static/18162337020112113130453/ Pv4地址正则表达式:^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$测试环境:Javascript/.Net/C++/JAVA特点:匹配IPv4地址 IPv6地址正则表达式:^([\da-fA-F]{1,4}:){7}[\da-fA-F]{1,4}$测试环境:Javasc…
JavaScript的String类和RegExp对象类都定义了相关方法使用正则表达式进行模式匹配,本文将以连载方式介绍JavaScript常用正则表达式与相关应用,欢迎交流 本节是连载一,首先介绍JavaScript语言常用的正则表达式,如何应用将在后几篇介绍. 所有案例将采用在线正则表达式验证工具RegExr进行测试,地址是:http://regexr.com/v1/ 测试文本来自Prestel Publishing Ltd.出版某书籍的版权信息: Copy Right The Librar…
一.校验数字的表达式 1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非零开头的数字:^(0|[1-9][0-9]*)$6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8 正数.负数.和小数:^(\-|\+)?\d+(\.\d+)?$9 有两位小数的正实数:^[0-9]+(.[0-9]…