Copy directory tree without copying files

2009-09-23 Thread Jeremy Conlin
I am trying to copy a folder hierarchy from one location to another.
I can use the shutil.copytree function to copy the folder tree, but I
don't want the files copied, just the folders.  What is a good way to
approach this?

Thanks,
Jeremy
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Copy directory tree without copying files

2009-09-23 Thread Jeremy Conlin
On Sep 23, 9:15 am, Tim Golden  wrote:
> Jeremy Conlin wrote:
> > I am trying to copy a folder hierarchy from one location to another.
> > I can use the shutil.copytree function to copy the folder tree, but I
> > don't want the files copied, just the folders.  What is a good way to
> > approach this?
>
> > Thanks,
> > Jeremy
>
> Use os.walk and create the directories as they appear?
>
> TJG

I was hoping to use os.walk, but this doesn't work because I wont know
when os.walk descends into a new directory or which directory it
descends into.  Perhaps I don't understand everything about it.

Thanks,
Jeremy
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Copy directory tree without copying files

2009-09-23 Thread Jeremy Conlin
On Sep 23, 9:15 am, dwatrous  wrote:
> Have you considered using 
> os.walk?http://docs.python.org/library/os.html#os.walk
>
> It won't be completely automated, but I think it should allow you to
> easily walk the directory structure to reproduce it in another
> location.
>
> If the file names/extensions are predictable you might also be able to
> use the ignore attribute in the shutil.copytree function to prevent
> copying files:http://docs.python.org/library/shutil.html#shutil.copytree
>
> Daniel
>

Thanks, that helps.  I could write a function like

def ignore_files(dirpath):
ignore = []
for f in os.listdir(dirpath)
if os.path.isfile(f):
ignore.append(f)
return ignore


That seems like it will work (haven't tested yet).  Thanks for the
help.
Jeremy


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Copy directory tree without copying files

2009-09-23 Thread Jeremy Conlin
On Sep 23, 9:31 am, Tim Golden  wrote:
> Jeremy Conlin wrote:
> > On Sep 23, 9:15 am, Tim Golden  wrote:
> >> Jeremy Conlin wrote:
> >>> I am trying to copy a folder hierarchy from one location to another.
> >>> I can use the shutil.copytree function to copy the folder tree, but I
> >>> don't want the files copied, just the folders.  What is a good way to
> >>> approach this?
> >>> Thanks,
> >>> Jeremy
> >> Use os.walk and create the directories as they appear?
>
> >> TJG
>
> > I was hoping to use os.walk, but this doesn't work because I wont know
> > when os.walk descends into a new directory or which directory it
> > descends into.  Perhaps I don't understand everything about it.
>
> Some rough but working code might help you out here:
>
> 
> import os
>
> source_dir = "c:/temp/oldtree"
> target_dir = "c:/temp/newtree" # should not exist yet
>
> for dirpath, dirnames, filenames in os.walk (source_dir):
>   os.mkdir (os.path.join (target_dir, dirpath[1+len (source_dir):]))
>
> os.startfile (target_dir)
>
> 
>
> TJG

Perfect.  That's exactly what I needed.
Jeremy
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Copy directory tree without copying files

2009-09-23 Thread Jeremy Conlin
On Sep 23, 9:44 am, Grant Edwards  wrote:
> On 2009-09-23, Jeremy Conlin  wrote:
>
> > I am trying to copy a folder hierarchy from one location to another.
> > I can use the shutil.copytree function to copy the folder tree, but I
> > don't want the files copied, just the folders.  What is a good way to
> > approach this?
>
> Just in case there's no real requirement to use Python...
>
> $ (cd srcdir; find . -type d) | (cd dstdir; xargs mkdir)

Thanks, but this has to be platform independent so Python seemed like
a good choice.

Jeremy
-- 
http://mail.python.org/mailman/listinfo/python-list