python 怎么实现两台服务器上批量复制文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 怎么实现两台服务器上批量复制文件相关的知识,希望对你有一定的参考价值。

1、把excel里文件名那一列复制,粘进一个空白的文本文件,命名为filelist.txt,上传到服务器。

2、在服务器上使用脚本导出,python脚本 fileCp.py 。

代码示例:
#! python
#coding:utf-8

##!/usr/bin/python
# Filename : fileCp.py
import sys
import os
import shutil

fileList=\'filelist.txt\'
targetDir=\'files\'

filedir = open(fileList)
line = filedir.readline()
log = open(\'running.log\',\'w\')
while line:
line = line.strip(\'\\n\');
basename = os.path.basename(line)
exists = os.path.exists(line)
if exists :
print \'copy \'+line+\' to \'+os.getcwd()+\'/\'+targetDir+\'/\'+basename
log.write(\'copy \'+line+\' to \'+os.getcwd()+\'/\'+targetDir+\'/\'+basename+\'\\r\\n\')
shutil.copy(line,targetDir+\'/\'+basename)
else:
print line+\' not exists\'
log.write(line+\' not exists\'+\'\\r\\n\')
line = filedir.readline()
log.close()
参考技术A 这个不是python该干的事情,你可以搜索一下

puppet ,ansible ,rsync

两台linux互相复制文件

http://jingyan.baidu.com/article/597a06434bf71e312a52436e.html

开发者们经常会在自己的电脑和服务器之间传输文件,今天小编说说怎么在两台linux系统下互相拷贝文件。

工具/原料

  • 两台装了linux系统的电脑,可在局域网中,也可在广域网中。

方法/步骤

  1. 1

    linux文件传输主要有一下几种方法:

    1.ftp2.samba服务3.sftp4.scp

    由于前面3种需要进行配置,在这里小编就不说了,有兴趣的童鞋可以自己查一下相关资料,小编今天只说scp拷贝。

  2. 2

    假设我当前在使用的电脑是A,服务器是B,那么我们先要确认B的IP地址。假设B的IP是192.168.2.208

  3. 3

    1、从服务端copy文件到本地。比如服务器的home下有一个文件是a.txt,那么命令是:scp [email protected]:/home/a.txt /home 此时会要你输入root的密码。输入后即可把a.txt 拷贝到你当前电脑的home下了。

    技术分享
  4. 4

    发现规律没有?scp的命令是:scp 服务器用户名@iP地址:服务端文件路径   客户端保存路径。所以说,scp后面不一定是root,也可以是其他的用户。

  5. 5

    同理,将文件从本地拷贝到服务器:

    scp /home/a.txt [email protected]:~

    此时输入密码即可

    技术分享
  6. 6

    以上说的都是拷贝文件的,那么如何拷贝含有子目录的文件夹呢?很简单,加入-r参数,如:

    技术分享

以上是关于python 怎么实现两台服务器上批量复制文件的主要内容,如果未能解决你的问题,请参考以下文章

python—os模块批量修改文件名&复制文件

Linux下编写一脚本,实现本目录下文件的批量复制。

局域网内两台电脑怎么双向同步文件?

Python3 实现批量图像数据增强(扩增)并复制xml标签文件目标检测笔记

mysql怎么实现主从复制

[shell实例]——用脚本实现向多台服务器批量复制文件(nmapscp)