| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Linux shell与expect配合完成自动打包资源并scp到另一台Linux电脑的例子 -> 正文阅读 |
|
[系统运维]Linux shell与expect配合完成自动打包资源并scp到另一台Linux电脑的例子 |
有时我们想使用shell脚本做一些自动操作,例如ssh或scp时自动输入密码,可以使用expect工具来实现。 需求: 使用shell与expect混合编程,将一个文件从机器A(Ubuntu16.04)中的目录mydata打包为mydata.tar.gz自动scp到机器B中(Ubuntu18.04),能自动接受yes/no询问,能自动输入密码。 按照网上的操作遇到的问题: 脚本自动跑了,但在自动输入密码时直接跳过了,导致自动scp失败 最终成功的脚本:
脚本截图(为防止上面代码编辑器对某些空格的错误处理): 注意事项: (1)spawn,send,interact 命令是expect工具中自带的命令,在shell中无法运行,必须要在expect环境中才能正常使用 (2)注意使用的是bash脚本引擎,经测试使用dash脚本引擎运行会报错 (3)第一行SCRIPT_HOME=那是在获取脚本所在的目录 (4)脚本在Ubuntu16.04环境中运行成功 参考链接: (1)expect脚本中使用expect eof 和使用interact的区别:https://blog.csdn.net/modi000/article/details/107115286/ (2)Shell脚本与expect脚本混合编程的正确方法:https://stackoverflow.com/questions/41165719/embedding-an-expect-script-inside-a-bash-script ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 13:28:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |