首页
学习
活动
专区
工具
TVP
发布

Linux expect 自动交互脚本用法

最近用到自动交互脚本进行数据库备份,以前虽然也有用来使用 ftp 远程获取文件,还来没有系统记录过,趁这次机会总结一下。...安装 expect expect是一个自动交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。...expect自动交互流程: spawn启动指定进程 expect获取指定关键字 send向指定程序发送指定字符 执行完成退出. 注意该脚本能够执行的前提是安装了 expect。...见谅~ 免交互expect eof和interact的区别 二者都是结束符号 expect eof :等待执行结束,用于执行自动化任务,无需后续继续交互,直接完成并退出。...Copyright: 采用 知识共享署名4.0 国际许可协议进行许可 Links: https://lixj.fun/archives/about-linux-expect

1.6K30

LinuxShell自动交互

简介 Linux Shell 的自动交互在很多场景下会使用到,比如我们需要批量运行一些需要输入参数进行交互的命令时,此时 Shell 的自动交互就能将我们从重复无聊的手动交互中解放出来。 2....2.1 内联输入重定向符 内联输入重定向符是一种输入重定向符,该输入重定向符用于从命令行中指定用于输入重定向的数据,因此可以用它来实现 Shell 的自动交互。...2.2 管道符 除了使用内联输入重定向符,也可以使用管道符来实现 Shell 自动交互。 #!...,有些 Linux 发行版可能没有预装,需要自行安装。...在 expect 脚本中: spawn 后面指定要实现自动交互的命令。 expect 用来等待要识别的消息。 send 用来发送输入参数。 expect off 用来指明自动交互结束。

69120
您找到你想要的搜索结果了吗?
是的
没有找到

​为什么python-office自动化办公不支持mac和linux

图片 python-office自动化办公这个开源项目是2022.5.13号上线,至今1个多月的时间分别在GitHub获得了150+ star,在Gitee获得了250+ star。...图片 从项目创建的第一天,就有朋友反馈:这个库支持Mac和Linux吗? 我一般都是直接回复:想支持,但是我做不到。有一个不太完美的替代方案。...市场上主流的办公用操作系统有:Win、Mac、Linux。最近的一次百度发布的调查显示,它们之间的占比分别约为89%、3.7%、0.79%。...虽然从宏观上看,技术上是这样、整个市场是这样,但是微观上,对使用这个项目的Mac、Linux用户来说,如果就是想试试怎么办?...、python-office-linux这些第三方库。

1.2K10

expect 实现脚本的自动交互

expect 是建立在 tcl 语言基础上的一个自动交互套件, 在一些需要交互输入指令的场景下, 可通过脚本设置自动进行交互通信。...可以将交互过程如:ssh 登录、ftp 登录、scp 复制文件等写在一个脚本上,使之自动化完成。尤其适用于需要对多台服务器执行相同操作的环境中,可以大大提高系统管理人员的工作效率。...其交互流程是: spawn 启动指定进程 -> expect 获取指定关键字 -> send 想指定进程发送指定指令 -> 执行完成, 退出。...expect 实例 自动拷贝 scp scp 远程复制文件(夹)涉及到很多交互式命令,我们不得不人工响应,expect 的出现解决了这个问题,实例脚本如下。...参考资料 expect自动交互详解 Ubuntu使用Spawn和expect实现ssh自动登陆 Linux中通过expect工具实现脚本的自动交互

85730

远程交互自动化处理

背景 在日常的测试工作中,经常会遇到和远程的服务器进行交互的情况,例如,小编这次就遇到了需要处理远程k8s上的日志文件的情况。...如果每次都需要打开k8s的界面,在命令行里面执行,操作就会变得非常的繁琐,也不太方便,于是就来探索一个比较方便的途径,能够自动化的获取文件到本地,来方便的在本地自动化处理。 准备工作 1....2.1 介绍 expect是一个免费的编程工具语言,用来实现自动交互式任务进行通信。 通过expect-send对:expect等待输出并判定特定的字符,当字符匹配,则send下一步的操作。...\” [ 对应转义字符: [ } 对应转义字符: } $ 对应转义字符: \\\$ \ 对应转义字符: \\\ ` 对应转义字符: \ 2.2 实现 根据expect的使用方式,首先进行用户名密码的自动登录...具体实现结果 完成了前面的准备工作之后,便可以编写自己的自动化处理脚本,方便的将远端的文件拉取到本地进行自动化处理,从而获取自己需要的信息。下面是小编的处理结果情况: ?

34810

Shell脚本和expect实现自动交互

expect介绍 expect是一个自动交互功能的工具,可以满足代替我们实际工作中需要从终端手动输入某些内容来使得程序或命令继续运行的目的。...远程主机执行命令时需要多次输入密码的情况 expect主要命令 spawn 启动新进程,用于执行shell命令 send 发送字符串给expect控制的进程 set 设置变量 set user root expect 从发起交互的命令的进程接受字符串...,用于匹配我们预想的字符串 exp_continue 继续执行接下来的交互操作 set timeout -1 设置超时时间 永远等待 set timeout 10 设置超时时间 10秒 interact...[root@linux /]# 批量获取在线的IP地址机进行批量秘钥分发 [root@linux /]# vim ssh.sh #!...测试结果 [root@linux /]# ssh root@172.16.0.4 Last login: Thu Aug 6 16:16:01 2020 from master [root@linux

1.4K30

Linux交互Shell脚本实例详解

一、引言 Shell是Linux内置的一种功能强大的交互脚本语言,其本质就是系列Linux命令的逻辑组合,熟悉Shell脚本编写对提升工作效率大有益处。...交互性Shell脚本用途更多,可轻松实现自动化软件安装卸载、自动化远程登录等各种需要用户密切参与的场景,下面通过几个实例演示一下交互Shell脚本的使用。...fi 保存后赋予可执行权限: $ chmod +x test.sh 然后执行看下效果: Linux交互Shell脚本 三、自动登录操作实例 首先需要安装expect软件包: $ sudo apt install...自动登录远程服务器 首先看下手动登录远程服务器的命令过程: Linux交互Shell脚本 注意上面的”password:”字符串,表明服务器系统是英语语言环境。...该脚本会自动登录进入到系统,无需任何操作,执行看下效果: Linux交互Shell脚本 如果未给脚本文件赋予可执行权限,通过expect也能执行: $ expect autossh.exp

1.2K30

Linux之expect交互语言命令

****前言**** 记得在去年在蝴蝶脚本已经看到过expect,只不过没有去留意它是什么,是干什么的,然而今天去了解了,并利用它来写自动交互脚本。...有时候需要同步文件(scp),远程服务器(ssh)等等,难免要进行密码的检验,这就麻烦了,不过认识expect就有解决方案啦,那么我们来认识一下吧~~~ ---- ****expect简介**** expect是Linux...脚本编程工具语言,用来实现自动交互式任务进行通信,从而不用手动处理。...expect可以根据程序的提示模拟标准输入提供给程序需要的输入来实现交互程序执行。...运维基础且常用命令 Linux之crontab定时任务 Linux之sed文本处理命令 Linux之ps进程查看命令 Linux之expect交互语言命令 Linux之tail命令 ----

1.9K50

VR开发--SteamVR框架工具(4):可交互对象+抓取交互对象+使用可交互对象+自动抓取可交互对象

1、VRTK_InteractableObject:可交互对象 (1)定义: 可交互对象脚本被添加到需要用(如控制器)来交互的任何游戏对象上。 ? ? (2)参数: ?...(1)定义: 交互抓取脚本被 添加到[CameraRig] 预制里的控制器对象上,并且需要添加VRTK_ControllerEvents脚本用来监听抓取和释放交互游戏对象的控制器按钮事件。...当一个有效对象开始被使用时发出 ControllerUnuseInteractableObject: 当一个有效对象停止被使用时发出 相关例子:框架工具中006/008场景 5、VRTK_ObjectAutoGrab:自动抓取可交互对象...(1)定义: 通过把VRTK_ObjectAutoGrab脚本加到控制器上并指定应该默认抓取的对象,来让特定控制器能自动抓取可交互对象。...自动抓取对象脚本添加到[CameraRig] 预制里的控制器对象上,控制器对象还需要添加VRTK_InteractGrab 脚本。 ?

2.3K10

详解自动交互命令expect,免去手动输入!

#概述 expect是一个用来实现自动交互功能的软件套件,是基于TCL的脚本编程工具语言,方便学习,功能强大 #扩展TCL:全拼为Tool Command Language ,是一种脚本语言,由John...2次密码,再如SSH登录的,如果没有做免密钥登录,第一次连接要和系统实现两次交互式输入 #安装 yum install expect #自动交互工作流程 spawn启动指定进程--->expect获取期待的关键字...-->send向指定进程发送指定字符-->进程执行完毕,退出结束 相关使用命令 #1.spawn命令 在expect自动交互程序执行的过程中,spawn命令是一开始就需要使用的命令。...通过spawn执行一个命令或程序,之后所有的expect操作都会在这个执行过的命令或程序进程中进行,包括自动交互功能,因此如果没有spawn命令,expect程序将会无法实现自动交互 #语法 spawn...[选项] [需要自动交互的命令或程序] #示例 spawn ssh root@192.168.1.1 uptime #在spawn命令的后面,直接加上要执行的命令或程序(例如这里的ssh命令)等,除此之外

3.9K30

linux不支持所有命令的解决办法

inux不支持所有命令怎么办?解决Linux所有命令不能使用的问题 出现这个问题说明你的 /etc/profile 配置出现了问题,一般是因为path配置出现了问题。...# 编辑profile文件 /usr/bin/vim /etc/profile 然后在新的窗口执行 source /etc/profile linux 所有命令无法使用 配置nginx时,错误export...之后linux 所有命令无法使用 出现这个问题是因为系统的环境变量没有正确配置造成的,造成这个原因有很多,比如系统升级,比如不正当操作等导致环境变量被覆盖修改,解决的方式有两种。...其一:直接在linux命令行界面输入如下,然后回车(导入环境变量,以及shell常见的命令的存放地址): export PATH=/usr/local/sbin:/usr/local/bin:/sbin

1.2K21

DevOps | 实现命令行交互自动

题图:Photo by Ma Fei on 80,000 tons silo 嗨呀,好久没有更新了,最近几个月一直忙着部门内质量平台的建设,因为是新成立的小组所以很多东西都是从零开始做,这期间做了很多跟自动化...今天先来介绍一个Python中用来实现命令行交互自动化的模块,之所以会有这样的需求是因为我们希望把一些繁琐的命令行交互过程给透明化这样对用户来说会友好很多降低使用成本,如下图: 这里是一个典型的需要用户交互的命令行操作...,当执行命令后会提示用户输入测试脚本文件名,回车后会再提示用户输入app的路径,如何让这一过程自动化呢?...就是它了shutit,其实还有个工具 pexpect 但是我试了好多次都没能达到想要的效果,而且网上大部分给出的解决方案也都是针对ssh登录自动化的,对于一个普遍的交互式命令行却不支持,当然也可能是我使用姿势不对

33710

解决浏览器中不支持音频自动播放的方法

实现 provide/inject地灵活运用 一种组件间通信的方式,允许祖先组件在子孙组件中注入一个依赖,不管层级嵌套有多深,它都能进行通信交互,具体的参见:https://cn.vuejs.org/v2...大致的意思是需要引导用户去交互,也就是要引导用户先去触发一次交互。通过查询相关资料,Chrome在2018年4月份发布的66版本关掉了声音自动播放,哦,原来是这样子啊。...不行的,阿Sir说了,一定得壁咚一下 这里我想到的一个做法是,先去检测用户的浏览器是否支持自动播放,如果不支持的话,我弹出一个框,让用户点一下,那么下次就有壁咚声了,233333333。...$alert( '检测到您的浏览器不支持媒体自动播放,是否同意播放测试音', '提示', { confirmButtonText

4.6K20

使用Selenium和Metamask 与 Dapp 自动交互

这些应用是利用去中心化的网络建立的,使用智能合约预先定义的交互,在用户之间提供无信任的互动。(如果你想了解更多关于Dapps的信息请点击这里[4]。...为了访问Dapps,用户需要使用一个加密货币钱包来连接,这为那些想要使用Selenium[5]等工具进行自动化/或测试Dapps的开发者带来了新的挑战。...在这篇文章中,我们将介绍如何使用Python和Chromium来解决这个问题的基本知识,然而,这里描述的原则可以来应用于任何编程语言和网络浏览器自动化工具。...为了成功地与一个DApp自动交互,我们不仅需要与目标网站互动,还需要同时与Metamask 扩展钱包交互,以批准应用程序与我们的钱包连接和其他可能的交易。...压缩扩展 为了在我们的自动浏览器上加载插件,我们首先需要将Metamask扩展压缩成一个.crx文件,以下是步骤: 在你的普通chrome上安装Metamask 导航到chrome://extensions

2.8K30
领券