#!/usr/bin/python #copy all files from input path to current directory no overwriting is allowed, backup of current directory is not made # #@author Nathaniel Anozie # ## #@note inspired by Nicklas Puetz tutorials on python file querying operations nicklaspuetz dot blogspot dot com # ## #last updated: 08/04/2013 -- initial release import getopt,sys #for file stuff import os #for copy file stuff import shutil #for printing stuff from pprint import pprint #copy all files from input path to current directory no overwriting is allowed, backup of current directory is not made, no permissions checking is made # def copyFile(d = '/tmp/test/t2/'): destinationPath = os.path.abspath('.') #current directory is destination path fromPath = d #hold all the file names that were copied result = [] if os.path.isdir(d) and os.path.isdir(destinationPath): print 'Great Found Directories to Search >> %s ...\n' %d #things to copy cant already exist and must be files allFromFile = os.listdir(d) allFrom = [os.path.join(d,f) for f in allFromFile] for fr in allFrom: print 'checking from file:%s\n' %fr if os.path.isfile(fr): #to check if file in a different directory first split file path and filename base, file = os.path.split(fr) toFilePath = os.path.join(destinationPath,file) if not os.path.exists(toFilePath): print 'Copying File>> %s into >>%s' %(fr,toFilePath) shutil.copyfile(fr,toFilePath)#copied files have same names as originals result.append(toFilePath) print 'Files Copied:\n' pprint(result) #for x in result: # print '%s\n' %x def usage(): print "usage: copyFile [-d|--directory]" print "-d,--directorypath to copy files from" def main(): try: opts, args = getopt.getopt(sys.argv[1:], "hd:", ["help","directory"]) except getopt.GetoptError, err: #print help info and exit print str(err) usage() sys.exit(2) dir = '/tmp/test/t2/' for o, a in opts: if o in ("-h","--help"): usage() sys.exit() elif o in ("-d","--directory"): dir = a copyFile(dir) if __name__ == '__main__': print 'current _name is: '+__name__ main()
cheers
-Nate