打开远程目录路径(Python)

打开远程目录路径(Python),python,directory,scp,Python,Directory,Scp,我正在编写一个代码,将图像从本地目录中的文件夹复制到远程目录。我正在尝试使用scp 因此,在我的目录中,有一个文件夹,其中包含带有图像的子文件夹。主文件夹中也有不在子文件夹中的图像。我试图遍历子文件夹和单个图像,并按公司对它们进行排序,然后为这些图像创建相应的公司文件夹,以便将其组织并复制到远程目录中 我在远程目录中创建新公司文件夹时遇到问题 这就是我所拥有的: def imageSync(): path = os.path.normpath("Z:\Complete") fol

我正在编写一个代码,将图像从本地目录中的文件夹复制到远程目录。我正在尝试使用scp

因此,在我的目录中,有一个文件夹,其中包含带有图像的子文件夹。主文件夹中也有不在子文件夹中的图像。我试图遍历子文件夹和单个图像,并按公司对它们进行排序,然后为这些图像创建相应的公司文件夹,以便将其组织并复制到远程目录中

我在远程目录中创建新公司文件夹时遇到问题

这就是我所拥有的:

def imageSync():
    path = os.path.normpath("Z:\Complete")
    folders = os.listdir(path)
    subfolder = []

    #separates subfolders from just images in complete folder
    for folder in folders:
        if folder[len(folder)-3:] == "jpg":   
            pass    
        else:
            subfolder.append(folder)

    p = dict()
    for x in range(len(subfolder)):
        p[x] = os.path.join(path, subfolder[x])

    sub = []
    for location in p.items():
        sub.append(location[1]) 

    noFold= []
    for s in sub:
        path1 = os.path.normpath(s)
        images = os.listdir(path1)
        for image in images:   
            name = image.split("-")
            comp = name[0]
            pathway = os.path.join(path1, image)
            path2 = "scp " + pathway + " blah@192.168.1.10: /var/files/ImageSync/" + comp
            pathhh = os.system(path2)
            if not os.path.exists(pathhh):
                noFold.append(image)
还有更多的代码,但我认为上面的部分将有助于解释我试图做什么

我已经创建了一个
ssh
密钥,希望能使
os.system
正常工作,但是Path2在我希望它成为远程服务器的路径时返回1。(我试过这个:)

另外,如何正确检查远程目录中的公司文件夹是否已经存在

我已经看过了,但我想我做错了什么


我是Python新手,因此感谢您的帮助

尝试将目录和嵌套子目录从本地复制到远程:

cmd = "sshpass -p {} scp -r {}/* root@{}://{}".format(
    remote_root_pass, 
    local_path, 
    remote_ip, 
    remote_path)
os.system(cmd)
别忘了导入操作系统, 您可以检查返回的exitcode(0是否成功)

此外,您可能需要“yum安装sshpass”

并更改/etc/ssh/ssh\u配置 严格的密钥检查询问 致: 无钥匙检查