Saturday 15 June 2019

How to copy a file along with directory structure/path using python?




First thing I have to mention here, I'm new to python.



Now I have a file located in:



a/long/long/path/to/file.py


I want to copy to my home directory with a new folder created:




/home/myhome/new_folder


My expected result is:



/home/myhome/new_folder/a/long/long/path/to/file.py


Is there any existing library to do that? If no, how can I achieve that?


Answer




To create all intermediate-level destination directories you could use os.makedirs() before copying:



import os
import shutil

srcfile = 'a/long/long/path/to/file.py'
dstroot = '/home/myhome/new_folder'


assert not os.path.isabs(srcfile)

dstdir = os.path.join(dstroot, os.path.dirname(srcfile))

os.makedirs(dstdir) # create all directories, raise an error if it already exists
shutil.copy(srcfile, dstdir)

No comments:

Post a Comment

php - file_get_contents shows unexpected output while reading a file

I want to output an inline jpg image as a base64 encoded string, however when I do this : $contents = file_get_contents($filename); print &q...