Differences between revisions 2 and 5 (spanning 3 versions)
Revision 2 as of 2007-05-07 19:06:55
Size: 570
Editor: GreyCat
Comment: *cough*
Revision 5 as of 2008-11-22 21:14:18
Size: 638
Editor: GreyCat
Comment: first-line, }}}, and placeholder for pax
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
[[Anchor(faq10)]] <<Anchor(faq10)>>
Line 4: Line 4:
{{{
    cd "$srcdir"
    find . -type d -print | cpio -pdumv "$dstdir"
}}}

 
{{{
 cd "$srcdir"
 find . -type d -print | cpio -pdumv "$dstdir"
 }}}
Line 11: Line 12:
{{{
    cd "$srcdir"
    find . -type d -print | tar c --files-from - --no-recursion | tar x --directory "$dstdir"
}}}
 {{{
 cd "$srcdir"
 find . -type d -print | tar c --files-from - --no-recursion |
  
tar x --directory "$dstdir"
 }}}
Line 17: Line 19:

 ''There should be a way to do this with `pax` too....'' - GreyCat

How can I recreate a directory structure, without the files?

With the cpio program:

  •  cd "$srcdir"
     find . -type d -print | cpio -pdumv "$dstdir"

or with GNU tar, and more verbose syntax:

  •  cd "$srcdir"
     find . -type d -print | tar c --files-from - --no-recursion |
       tar x --directory "$dstdir"

This creates a list of directory names with find, non-recursively adds just the directories to an archive, and pipes it to a second tar instance to extract it at the target location.

  • There should be a way to do this with pax too.... - GreyCat

BashFAQ/010 (last edited 2023-09-22 06:29:48 by StephaneChazelas)