expect的简单使用,linux交互性shell
2016-09-16 16:27
543 查看
expect的学习使用触发自一个项目,项目平台是树莓派三代,要求是要在root用户下面执行一个名为61850Svr的程序。
1:首先需要你的运行环境中已经安装好了expect,怎么安装不说了。
2:对expect的理念认知:
①:expect是单独的一种脚本语言工具。expect不是/bin/sh,也不是/bin/bash,他是linux用于模拟人机交互行为的程序,他是一个默认安装于/usr/bin下的程序。
②:作为模拟交互,那么自然是模仿人机的交互动作,expect的流程就是按照这个思路来的。概括一下人在操作linux时的动作:
壹:人输入rm xxx、cp xxx、su...等命令,回车。
贰:机器返回执行信息结果。
叁:人根据返回信息继续选择“”yes、no“或者接着输入rm xxx,cp xxx等命令,或不在继续。
③:交互的双方默认是expect脚本和机器内核,字符终端只作为中间载体。
④:所谓交互命令特指su、ssh、tftp等命令,这些命令在启动后需要和“人”进行交互,而单纯的echo “xxx”、ls -all这些其实并没有交互的要求,没有必要用expect,该篇主要针对的是交互需求命令。
3:对expect语法的认知:
①:需要#!/usr/bin/expect作为起始行
②:expect的几个关键语法标示:
壹:spawn //expect脚本中用于向机器发出首个linux命令用,该命令将在系统中创建一个进程
贰:expect //expect脚本中用于等待和分析机器执行结果用
叁:send //expect脚本中用于模仿“人"向机器进程发出linux命令用
肆:send_user //expect脚本中用于直接向中间载体-字符终端发送信息用
伍:interact //expect脚本中用于将交互双方由expect脚本和机器内核改为——>字符终端和机器内核(即为正常人和机器交互的模式)
4:expect(交互命令流程图示,以登录root为例)
5:样例
1:首先需要你的运行环境中已经安装好了expect,怎么安装不说了。
2:对expect的理念认知:
①:expect是单独的一种脚本语言工具。expect不是/bin/sh,也不是/bin/bash,他是linux用于模拟人机交互行为的程序,他是一个默认安装于/usr/bin下的程序。
②:作为模拟交互,那么自然是模仿人机的交互动作,expect的流程就是按照这个思路来的。概括一下人在操作linux时的动作:
壹:人输入rm xxx、cp xxx、su...等命令,回车。
贰:机器返回执行信息结果。
叁:人根据返回信息继续选择“”yes、no“或者接着输入rm xxx,cp xxx等命令,或不在继续。
③:交互的双方默认是expect脚本和机器内核,字符终端只作为中间载体。
④:所谓交互命令特指su、ssh、tftp等命令,这些命令在启动后需要和“人”进行交互,而单纯的echo “xxx”、ls -all这些其实并没有交互的要求,没有必要用expect,该篇主要针对的是交互需求命令。
3:对expect语法的认知:
①:需要#!/usr/bin/expect作为起始行
②:expect的几个关键语法标示:
壹:spawn //expect脚本中用于向机器发出首个linux命令用,该命令将在系统中创建一个进程
贰:expect //expect脚本中用于等待和分析机器执行结果用
叁:send //expect脚本中用于模仿“人"向机器进程发出linux命令用
肆:send_user //expect脚本中用于直接向中间载体-字符终端发送信息用
伍:interact //expect脚本中用于将交互双方由expect脚本和机器内核改为——>字符终端和机器内核(即为正常人和机器交互的模式)
4:expect(交互命令流程图示,以登录root为例)
5:样例
相关文章推荐
- Linux学习之shell脚本的简单使用
- 在linux应用程序使用system函数执行简单的shell交互命令的方法
- Linux下使用shell+expect远程登录主机
- 在 Linux 命令行中使用和执行 PHP 代码(二):12 个 PHP 交互性 shell 的用法
- linux下使用expect+scp+shell实现分布式集群系统安装,升级,部署
- 最近才知道的一款软件,可以实现在windows下使用linux下的命令,甚至可以使用简单的shell
- 详解Linux使用shell+expect远程登录主机
- linux 下使用expect编写shell 脚本交互访问远程服务器
- Linux无交互式shell 有root密码下使用expect执行root命令
- Linux 基础知识(一) shell的&&和|| 简单使用
- 在 Linux 命令行中使用和执行 PHP 代码(二):12 个 PHP 交互性 shell 的用法
- 关于Linux_shell中的管道命令pipe “|”的简单学习和使用
- Linux下C语言引用shell脚本的简单例子
- Linux几个简单使用的命令
- 使用Linux的Shell脚本维护Oracle
- linux下使用libcpcap的简单代码
- 百度笔试题2005题目大致是这样的: 第一部分选择题: 有几道网络相关的题目,巨简单,比如第一题是TCP、RIP、IP、FTP中哪个协议是传输层的......。有一道linux的 chown使用题目。其他的全是数据结构的题目!什么链,表
- WINDOWS下使用EXPECT的简单例子
- Linux 打开shell的过程;bash基本使用
- linux下的一个简单md5shell