-1
import ftplib
import os

server = 'enter your servername here'
username = 'root'
password = 'passowrd'
myFTP = ftplib.FTP(server, username, password)
myPath = r'C:\path_of_the_folder_goes_here'
def uploadThis(path):
    files = os.listdir(path)
    os.chdir(path)
    for f in files:
        if os.path.isfile(path + r'\{}'.format(f)):
            fh = open(f, 'rb')
            myFTP.storbinary('STOR %s' % f, fh)
            fh.close()
        elif os.path.isdir(path + r'\{}'.format(f)):
            myFTP.mkd(f)
            myFTP.cwd(f)
            uploadThis(path + r'\{}'.format(f))
    myFTP.cwd('..')
    os.chdir('..')
uploadThis(myPath)

I have this scrip that upload the given directory files on the server. But i cant figure out a way to change directory on the server it directly uploads to the main folder it gets. Also is there any way i can execute a file after the upload? Mean find the given executable file on the server and executes it?

user3551620
  • 169
  • 1
  • 5
  • 17

1 Answers1

0

Use FTP.cwd method:

myFTP.cwd('/remote/path')

before you call

uploadThis(myPath)

Answered by @Martin Prikryl
thanks.

user3551620
  • 169
  • 1
  • 5
  • 17