Linux Shell 自动交互功能】的更多相关文章

需求背景:   近日,在安装某软件过程,发现在安装过程需要输入一些信息才能继续下一步操作,在机器数量较少情况下,我们可以单台登录上去完成安装操作,但当机器数量超过一定时,如果再手动登录操作,就会产生大量重复性操作,既不能带来有效学习能力提升,同时也会极大产生不确定性,引发工作效率下降,那么如何自动化完成某些操作呢,尤其是带有交互功能的步骤呢,例如需要输入账号密码? 如有兴趣转载,请标注来源:https://www.cnblogs.com/xiong97/p/16557437.html  谢谢!…
如果你要学习linux,你可能会遇到Linux Shell自动交互问题,这里将介绍Linux Shell自动交互的解决方法,在这里拿出来和大家分享一下. 一.背景 shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量.条件.算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多. 但是有时候我们可能会需要实现和交互程序如ftp,telnet服务器等进行交互的功能,这时候我们需要用到shell的自动交互功能,本文收集了…
转自:linux expect详解(ssh自动登录) shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh root@192.168.22.194 expect "*password:" send "123\r" expect "*#" interact Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使之自动化完成.形象的说,ssh登录,ftp登录等都…
一.背景 shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量.条件.算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多. 但是有时候我们可能会需要实现和交互程序如ftp,telnet服务器等进行交互的功能,这时候我们需要用到shell的自动交互功能,本文收集了较常用的三种自动交互方法,并进行了比较和总结. 二.需求 需求1:    从一台linux机器ftp登陆到另一台linux机器,进行系列操作后关闭,懒得每…
expect 是一个自动交互功能的工具.expect 是开了一个子进程,通过 spawn 来执行 shell 脚本,监测到脚本的返回结果,通过 expect 判断要进行的交互输入内容. expect 基本命令 spawn 调用要执行的命令 expect 等待命令提示信息的出现,用于捕捉用户输入的提示 send 发送需要交互的值,替代了用户手动输入内容 set 设置变量值 interact 执行完成后保持交互状态,把控制权交给控制台.如果没有这一句登录完成后会退出,而不是留在远程终端上 expec…
原文地址:http://www.nginx.cn/1934.html shell脚本需要交互的地方可以使用here文档是实现,但是有些命令却需要用户手动去就交互如passwd.scp 对自动部署免去用户交互很痛苦,expect能很好的解决这类问题. expect的核心是spawn expect send set spawn 调用要执行的命令expect 等待命令提示信息的出现,也就是捕捉用户输入的提示:send 发送需要交互的值,替代了用户手动输入内容set 设置变量值interact 执行完成…
linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧. 1.删除文件命令: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 实例命令: find /opt/soft/log/ -mtime +30…
FROM:http://www.nginx.cn/1934.html shell脚本需要交互的地方可以使用here文档是实现,但是有些命令却需要用户手动去就交互如passwd.scp 对自动部署免去用户交互很痛苦,expect能很好的解决这类问题. expect的核心是spawn expect send set spawn 调用要执行的命令expect 等待命令提示信息的出现,也就是捕捉用户输入的提示:send 发送需要交互的值,替代了用户手动输入内容set 设置变量值interact 执行完成…
1.示例1 功能:对mongoDB导出数据,根据sid的不同状态进行统计 技术点:shell bash  读写文件.字符串截取.函数.用多个文件提到的map.grep查找并赋值给变量 #!/bin/bash i=1 file=/Users/jifeng/Downloads/diu.txt read_recorde(){ findstr=$(grep "$1" tmp.sid.1) find_sid=${findstr:0:20} find_status=${findstr:23:2}…
如何搭建本地yum源见附录① 如何搭建FTP yum源见附录② 脚本正文: #!/bin/sh# CenterOS config yumOSV=`rpm -q --qf %{version} centos-release`echo "您的centeros release 版本:$OSV"echo -e "\n" if [[ $OSV -eq 6 || $OSV -eq 7 ]]then #config yum cp -r /etc/yum.repos.d/ /etc…