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

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

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

 


 

实现功能

批量从不同的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:登录该主机的用户名

hostkeyhostkey

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 25606: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

 

 

目录
相关文章
|
21天前
|
C++ Python
《从零开始学Python》(第二版) PDF下载读书分享
Python,由Guido van Rossum创造(1989),是1991年发布的面向对象、解释型编程语言,以其简洁清晰的语法和强大的库著称,昵称“胶水语言”。它连接不同模块,强调代码的优雅、明确和简单。《从零开始学Python》(第二版)是本风趣、实践导向的教材,提供PDF下载,是学习Python的宝贵资源。![书封](https://ucc.alicdn.com/pic/developer-ecology/nrw3f3oqlpmag_40f357729aac4defa97fb1e0f66a2501.png)
26 1
《从零开始学Python》(第二版) PDF下载读书分享
|
7天前
|
Java Linux 应用服务中间件
Windows和Linux的最佳Web服务器
【7月更文挑战第20天】Windows和Linux的最佳Web服务器
20 3
|
19天前
|
Python
接上python如何处理下载中断的情况
实现断点续传机制涉及记录已下载的字节数、使用`Range`头继续下载及合并文件块。Python示例代码展示了如何通过`requests`库从上次中断的位置开始下载,将新内容追加到现有文件。函数`resume_download(url, filename, last_byte=0)`接收URL、文件名和最后字节位置作为参数。注意,实际使用时需确保URL和文件路径有效。
|
19天前
|
数据挖掘 Python
利用Python进行数据分析PDF下载经典数据分享推荐
**Python数据分析大师作,Wes McKinney亲著,详述数据操作、清洗与分析。第2版面向Python 3.6,涵盖pandas、NumPy、IPython和Jupyter更新,实战案例丰富;第3版已升级至Python 3.10和pandas 1.4,继续引领数据科学潮流。[PDF下载](https://zhangfeidezhu.com/?p=337)**
24 0
利用Python进行数据分析PDF下载经典数据分享推荐
|
2天前
|
Linux 网络安全 Android开发
Termux-远程管理Linux服务器
在手机上通过termux管理Linux服务器
|
13天前
|
网络协议 安全 Python
我们将使用Python的内置库`http.server`来创建一个简单的Web服务器。虽然这个示例相对简单,但我们可以围绕它展开许多讨论,包括HTTP协议、网络编程、异常处理、多线程等。
我们将使用Python的内置库`http.server`来创建一个简单的Web服务器。虽然这个示例相对简单,但我们可以围绕它展开许多讨论,包括HTTP协议、网络编程、异常处理、多线程等。
|
22天前
|
网络协议 Linux
云服务器内部端口占用,9090端口已经存在了,如何关闭,Linux查询端口,查看端口,端口查询,关闭端口写法-netstat -tuln,​fuser -k 3306/tcp​
云服务器内部端口占用,9090端口已经存在了,如何关闭,Linux查询端口,查看端口,端口查询,关闭端口写法-netstat -tuln,​fuser -k 3306/tcp​
|
22天前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上

热门文章

最新文章