Dush
Dush

Reputation: 51

How to move and replace files from FTP folder to another folder in same FTP

I am trying to move some XML files in an FTP location to another location in the same FTP. I tried with the following code, but it doesn't work.

def ftpPush(filepathSource, filename, filepathDestination):
    try:
        ftp = FTP(ip, username, password)
        ftp.cwd(filepathDestination)
    
        ftp.storlines("STOR "+filename, open(filepathSource, 'r')) 
        ftp.quit()
        
        for fileName in os.listdir(path):
            if fileName.endswith(".xml"):
                ftpPush(filepathSource, filename, filepathDestination)
        
    except Exception, e:
        print str(e)
        
    finally:
        ftp.close()

Upvotes: 3

Views: 12050

Answers (1)

Martin Prikryl
Martin Prikryl

Reputation: 202158

To move a file use the FTP.rename.

Assuming that the filepathSource and the filepathDestination are both remote files, you do:

ftp.rename(filepathSource, filepathDestination)

Upvotes: 12

Related Questions