您现在的位置是:首页 > 正文

windows文件远程传输

2024-02-29 10:44:59阅读 2
import os
import shutil
import re

def repalce_drive(path,virtual_drive):
    # 把盘符替换为虚拟盘符
    res = re.match('(\w{1})(:.*?)', path)
    drive = res.group(1)
    start = res.start(1)
    end = res.end(1)
    return drive,''.join([path[:start],virtual_drive,path[end:]])



def windows2windows(ip,user,password,srcpath,dstpath):
    '''
    从远程电脑拿到本机
    '''
    # 共享盘的盘符
    virtual_drives = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
    # 倒序
    virtual_drives = virtual_drives[::-1]

    flag = False
    for virtual_drive in virtual_drives:
        # 虚拟盘如果本机有重复的,则重新换
        try:
            drive,virtual_srcpath = repalce_drive(srcpath, virtual_drive)
            # 建立共享盘
            cmd = r'net use {}: \\{}\{}$ /user:{} {} /PERSISTENT:YES'.format(virtual_drive,ip,drive,user,password)
            os.system(cmd)
            # 复制目录
            shutil.copytree(virtual_srcpath, dstpath, True)
            # 清除共享盘
            cmd = r'net use {}: /del'.format(virtual_drive)
            os.system(cmd)
            flag = True
        except:
            pass

        if flag:
            break




if __name__ == '__main__':
    # 远程电脑的相关信息
    src_ip = '192.168.1.1'
    src_user = 'Administrator'
    src_password = '12345'
    src_path = 'f:/test'
    # 存入本机的地址信息
    dst_path = 'D:/test'

    windows2windows(src_ip, src_user, src_password, src_path, dst_path)

网站文章

  • Kotlin笔记——常用注解

    @Nullable和@NotNull 以检查给定变量、参数或返回值的 null 性。@Nullable注解用于指明可以为 null 的变量、参数或返回值,而@NonNull则用于指明不可以为 null...

    2024-02-29 10:44:51
  • LVS负载均衡之--DR模式

    LVS负载均衡之--DR模式

    前言:上一章和拐友们讲解了LVS虚拟服务器的NAT模式,这章讲解LVS中的负载均衡中的DR模式目录一.LVS-DR工作原理1.1数据包流向分析1.2DR模式的特点二.ARP的问题2.1问题冲突2.1....

    2024-02-29 10:44:42
  • 【转】“从客户端(ctl00$Content$txtContent)中检测到有潜在危险的 Request.Form 值”之解...

    【转】“从客户端(ctl00$Content$txtContent)中检测到有潜在危险的 Request.Form 值”之解...

    转载自 sucheng1031 最终编辑 hybingo “/WebSite”应用程序中的服务器错误。从客户端(ctl00$Content$txtContent="木木木木木木木 ")中检测到有潜在危险的 Request.Form 值。说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示存在危及应用程序安全的尝试,如跨...

    2024-02-29 10:44:13
  • 闲来无事

    突然想说、喜欢安姐、????、优秀的那么自然、还有那么许多一直优秀的人、读读你们的故事、思考下自己的人生、是啊、对错并不重要、关键是成长和思考希望所有人都能按照自己的意愿过一生------- 杂谈 -...

    2024-02-29 10:44:05
  • WGS84坐标转BD-09坐标(wgs84转百度)

    WGS84坐标转BD-09坐标(wgs84转百度)

    2024-02-29 10:43:57
  • JAVA-JDK8的特性之Lambda表达式 最新发布

    Thread类需要一个Runnable接口作为参数,其中的抽象方法run方法是用来指定线程任务内容的核心。Lambda表达式的语法是非常简洁的,但是Lambda表达式不是随便使用的,使用时有几个条件要...

    2024-02-29 10:43:51
  • RabbitMQ集群高可用的部署

    RabbitMQ集群高可用的部署

    #---------------------------------------------------------------------# Example configuration for a ...

    2024-02-29 10:43:22
  • springboot发送邮件的实现(简单发送,带附件发送,模板发送)

    springboot发送邮件的实现(简单发送,带附件发送,模板发送)

    今天学了springboot如何发送邮件,做了以下的内容总结,方便自己日后复习和查看!1.pom文件maven的引入<!-- send mail --><dependency> <groupId...

    2024-02-29 10:43:15
  • Linux安装loadrunner负载机

    Linux安装loadrunner负载机

    1、loadrunner下载地址:http://download.csdn.net/download/intel80586/9542271或者其他资源2、首先用rpm -qa|grep -i c++命...

    2024-02-29 10:43:08
  • C/C++:双重循环中的break

    C/C++:双重循环中的break

    break语句的执行只会导致其所在层的循环被中止。在一个嵌套的双重循环中,处于内层循环内的break被执行时,只会导致内层循环的中止,外层循环不受影响。

    2024-02-29 10:42:39