文档章节

linux shell 嵌套expect 与服务器交互脚本

KongFanhao
 KongFanhao
发布于 2016/11/11 15:47
字数 281
阅读 109
收藏 2

我们与服务器进行交互是该用expect 脚本的,用 “/usr/bin/expect <<-EOF” 来开启expect 脚本

用spawn 来开启一个新的进程 expect 来接受命令,send来发送交互命令 结束用 EOF来over expect脚本

废话不多说直接上脚本,注释已经很清晰了:

#!/bin/bash

# 进入项目目录 将项目打包
cd /home/kfh/git/JusSpiderV2.0/
mvn install
cd /home/kfh/git/JusSpiderV2.0/target

# 嵌套expect脚本与服务器进行交互
/usr/bin/expect <<-EOF
# 将项目scp到服务器上
spawn scp jusspider-1.0-RELEASE.tar.gz root@192.168.15.45:~  
set timeout 30
expect {
"*password:" { send "*********\r"}
}
# 等expect 出现100% 然后进行下面的操作
expect 100%
expect eof ;
# ssh 新开启一个spawn 登录服务器
spawn ssh root@192.168.15.45
expect "*password:"
send "911GongGexy\r"

#mv tar to yunnan
expect "*#"
send "mv -f jusspider-1.0-RELEASE.tar.gz /usr/java/gongshang/yunnan/\r"

# 进入tar.gz所在目录 将其解压
send "cd /usr/java/gongshang/yunnan/\r"
send "rm -rf jusspider-1.0-RELEASE\r"
send "ls\r"
send "tar zxvf jusspider-1.0-RELEASE.tar.gz\r"
send "exit\r"
expect eof
EOF

 

 

© 著作权归作者所有

共有 人打赏支持
KongFanhao
粉丝 5
博文 76
码字总数 42265
作品 0
海淀
程序员
教会你Linux Shell自动交互的三种方法

你了解Linux系统么?你是Linux系统的应用者么?如果你要学习linux,你可能会遇到Linux Shell自动交互问题,这里将介绍Linux Shell自动交互的解决方法,在这里拿出来和大家分享一下。 一、背景...

魏邪乎
2014/02/13
0
0
Linux expect 用法

用法 1. [#!/usr/bin/expect] 这一行告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和Linux下的bash、windows下的cmd是一类东西。 注意:这一行需要在脚本的第一行。 ...

leonardos
07/02
0
0
使用expect实现shell自动交互

shell脚本需要交互的地方可以使用here文档是实现,但是有些命令却需要用户手动去就交互如passwd、scp。对自动部署免去用户交互很痛苦,expect能很好的解决这类问题。 expect的核心是spawn e...

renwofei423
2014/03/13
0
0
Shell脚本:使用rsync备份文件/目录

本文我们介绍一个shell脚本,用来使用rsync命令将你本地Linux机器上的文件/目录备份到远程Linux服务器上。使用该脚本会以交互的方式实施备份,你需要提供远程备份服务器的主机名/ip地址和文件...

酱醋茶丶
2015/10/28
0
0
linux 远程自动化部署

#!/usr/bin/expect -f set timeout 60set f [open ./ip r]while { [gets $f line ] >=0 } { set ip [lindex $line 0] #echo "开始启动$ip的服务" spawn scp push.war jeeker@$ip:/home/jeeke......

kongjun
2016/01/08
698
2

没有更多内容

加载失败,请刷新页面

加载更多

WinDbg

参考来自:http://www.cnit.net.cn/?id=225 SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols ctrl + d to open dump_file Microsoft (R) Windows Debugger Version 6.12.0002.633......

xueyuse0012
今天
2
0
OSChina 周五乱弹 —— 想不想把92年的萝莉退货

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @罗马的王:分享松澤由美的单曲《地球ぎ》 很久没看圣斗士星矢了 《地球ぎ》- 松澤由美 手机党少年们想听歌,请使劲儿戳(这里) @开源中国首...

小小编辑
今天
14
2
springBoot条件配置

本篇介绍下,如何通过springboot的条件配置,控制Bean的创建 介绍下开发环境 JDK版本1.8 springboot版本是1.5.2 开发工具为 intellij idea(2018.2) 开发环境为 15款MacBook Pro 前言 很多时候,...

贺小五
今天
1
0
javascript source map 的使用

之前发现VS.NET会为压缩的js文添加一个与文件名同名的.map文件,一直没有搞懂他是用来做什么的,直接删除掉运行时浏览器又会报错,后来google了一直才真正搞懂了这个小小的map文件背后的巨大...

粒子数反转
昨天
1
0
谈谈如何学Linux和它在如今社会的影响

昨天,还在农耕脑力社会,今天已经人工智能技术、大数据、信息技术的科技社会了,高速开展并迅速浸透到当今科技社会的各个方面,Linux日益成为人们信息时代的到来,更加考验我们对信息的处理程...

linux-tao
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部