python+paramiko实现自动部署替换文件(二)---一些优化

与上一篇文章主要区别:
1.主要介绍web.zip的替换,实现自动查找压缩包解压后的文件,并自动备份这些文件

2.优化了重启服务器部分的代码,实现自行选择是否需要重启,重启输入1,不重启输入0

主要操作步骤:

1.下载web.zip包至本机(代码中写的是D盘 file文件夹 D:/file),并解压--------这很重要,文件名和路径不能随意修改

2.解压压缩包后,运行代码,重启输入1,不重启输入0

3.喝杯水休息一下,哈哈哈哈哈

主要代码介绍:

opt下新建目录

前面定义的方法,这边不做介绍,见上一篇文章即可

代码还是比较简单易懂的,主要是在opt目录下新建web目录

上传并解压文件

这边同上一篇文章,大同小异,个人觉得很是蛮易懂的

备份需要替换的文件

这部分代码是本次优化的重点,其中划线的部分,主要是将解压后的文件夹中的所有文件打印出来,只打印文件,不打印文件夹,这部分代码是我参考网上的代码,非自己原创,给原作者的ideal点赞(来自百度知道)。

oldfile和newfile

oldfile主要是将打印出来文件地址切割,然后拼接,并替换,这样就可以直接换成linux命令执行

newfile主要是备份,在原来老的文件后加上 time + bak区分,这样就成了一个linux备份命令   ’mv  xxxxx     xxxx0615bak’

直接运行,备份文件,非常方便

复制文件并重启服务器

其中复制文件部分代码,没变,同上一篇文章

这次也顺便优化了重启服务的代码,如果需要重启服务器就输入1,不需要重启服务器则输入0,避免一些不必要的重启,减少对服务器的摧残,嘻嘻嘻嘻。

以上所有,欢迎交流批评指正,嘻嘻

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,187评论 2 33
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,486评论 19 139
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,934评论 9 468
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,660评论 25 709
  • 今天天气真好。经过前些天的乍暧忽寒,甚至夹杂着一阵怒风狂号,现在终于春暖花开,阳春三月不以人的意志来了,迈着她轻盈...
    江苏刘志祥阅读 3,968评论 1 4