专栏首页授客的专栏Python 实现批量从不同的Linux服务器下载文件

Python 实现批量从不同的Linux服务器下载文件

实现功能 1

测试环境 1

使用方法 1

1、 编辑配置文件conf/file_for_download.txt 1

2、 编辑配置文件conf/download.conf 1

3、 编辑配置文件conf/host_config.conf 2

4、 运行程序 3

5、 查看结果 3

源码下载地址 4

实现功能

批量从不同的Linux服务器下载指定文件

测试环境

Win7 64位

Python 3.3.2

pscp 64位

下载地址:

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

网盘下载地址:

https://pan.baidu.com/s/1qYFft4g

使用方法

1、编辑配置文件conf/file_for_download.txt

# 测试实例名(# 代表注释 [192.168.1.103] /home/MariaDB-10.0.19-centos7-x86_64-test.rpm [192.168.1.102] /home/testacc/testfile

说明:

[192.168.1.103]:要下载目标文件所在的主机ip

/home/MariaDB-10.0.19-centos7-x86_64-test.rpm:要下载的目标文件路径--相对于“根目录”的文件绝对路径,,每一行代表一个文件路径

2、编辑配置文件conf/download.conf

[STORAGE] dirpath_for_storage = d:\pkgdir dirpath_for_storage_bak = d:\svn\mybak [TARGET] MariaDB-10.0.19-centos7-x86_64-test.rpm

#MariaDB-10.0.19-centos7-x86-test.rpm

说明:

dirpath_for_storage设置一个目录路径,作为下载文件的存储路径

dirpath_for_storage_bak 设置一个目录路径,存储上次下载的文件(再次执行下载之前会把dirpath_for_storage目录下的文件复制到dirpath_for_storage_bak,然后删除dirpath_for_storage下的文件)

MariaDB-10.0.19-centos7-x86_64-test.rpm 要下载的文件名称,每一行代表一个文件路径

# 表示注释,不会被程序读取

3、编辑配置文件conf/host_config.conf

如下截图,配置需要下载文件所在的服务器主机信息

说明:

[192.168.1.102]: [需要下载文件所在的目标主机ip]

host:需要上传文件的目标主机ip

username:登录该主机的用户名

hostkey:hostkey

password:登录密码

port:端口号

remark:补充说明,比如该主机是作啥用的

hostkey的获取方式如下:

进入到项目文件中的pscp目录

cd autodeploy20171102\pscp

执行以下命令

pscp.exe -v -P 22 -pw huo

zhe root@192.168.1.103:/home/MariaDB-10.0.19-centos7-x86_64-test.rpm d:\pkgdir

Connecting to 192.168.1.103 port 22

(略)

Host key fingerprint is:

ssh-ed25519 256 06:e4:dd:e2:99:a9:46:c7:b2:b5:c9:97:37:a6:89:dd

(略)

如上,带背景色,加粗部分的内容,就是hostkey

选项说明:

-P 22:端口

-pw :登录密码

/home/MariaDB-10.0.19-centos7-x86_64-test.rpm:要下载的远程文件

root@192.168.1.103:登陆服务器的用户名@服务器ip

d:\pkgdir:存储下载文件的目标路径

注意:一个文件要能被正常下载,必须满足三个条件:

conf/file_for_download.txt配置了该文件所在远程主机和绝对路径

conf/download.conf TARGET节点下,配置了该文件名,且非注释

conf/host_config.conf 配置了要下载文件所在主机节点信息

4、运行程序

进入到项目跟目录

cd /d autodeploy20171102

python main.py

5、查看结果

result/result_for_success.txt

result/result_for_failure.txt

分别记录了运行成功和失败的文件信息

源码下载地址

https://pan.baidu.com/s/1hscm0rM

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Windows 批处理获取某路径下最新创建的文件的名称

    echo off setlocal enabledelayedexpansion rem 设置文件所在目录 set src_dir=F:\Dow...

    授客
  • 测试思想 单元测试用例基础设计思想总结

    注:简单的说,用例大致由3部分组成,一部分是操作,一部分是操作时使用的测试数据,另一部分是输出及预期结果等,这里操作和输出预期结果等都暂且不提,这里说的用例设...

    授客
  • Python 获取被调用函数名称,所处模块,被调用代码行

    print(sys._getframe().f_code.co_filename)

    授客
  • 怎样学Python之第十九课 高级文件输入和输出

    欢迎回来!如果您还记得以前的几次培训课程,我们介绍了基本的文件I/O。 这是使我们的脚本适用于现实生活场景中的一个非常重要的步骤,今天我们将要深入这些概念。 我...

    用户1631416
  • 虚幻引擎5技术解析:几何图像的思想

    Lumen in the Land of Nanite,在PlayStation 5上运行的实时演示.

    新智元
  • python连接mysql

    下载地址:https://pypi.python.org/pypi/MySQL-python/1.2.5

    py3study
  • GSEA----软件操作实战

    大家新年好呀~之前的一篇笔记我们关注了一下GSEA的原理:GSEA入门---------原理,今天我们将跟随文献上的例子,进行实战练习。 一:数据准备 本次...

    liu_ll
  • 安装模块 pyodbc 问题

    小闫同学啊
  • 在Android Studio环境下建立UiAutomator环境

    顾翔老师开发的bugreport2script开源了,希望大家多提建议。文件在https://github.com/xianggu625/bug2testscr...

    小老鼠
  • 得到差异表达基因后怎么做

    不管芯片数据还是测序数据,得到的差异表达基因DEGs都是独立的基因,如果直接对这些基因分析叫单基因分析,这种分析会有很多弊端,比如:

    Y大宽

扫码关注云+社区

领取腾讯云代金券