Copy a Directory from Command Line
Copying a directory for the sake of backup is something I do often, especially when I'm trying to figure out why something isn't working when I use an external library. I'll copy the directory structure as a backup, mess around with the original source until I find a solution, then restore the original and change my overall system code to bring in my revised version.
You can't just use cp to copy a directory structure -- you'll see cp: myDir is a directory (not copied). You'll need to add a few additional flags to copy a directory structure:
cp -Rp source source_copy
The above command copies the directory recursively while keeping the same permissions!
![9 Mind-Blowing Canvas Demos]()
The <canvas> element has been a revelation for the visual experts among our ranks. Canvas provides the means for incredible and efficient animations with the added bonus of no Flash; these developers can flash their awesome JavaScript skills instead. Here are nine unbelievable canvas demos that...
![CSS Gradients]()
With CSS border-radius, I showed you how CSS can bridge the gap between design and development by adding rounded corners to elements. CSS gradients are another step in that direction. Now that CSS gradients are supported in Internet Explorer 8+, Firefox, Safari, and Chrome...
![Drag. Drop. Lock.]()
I've received dozens of emails about my Six Degrees of Kevin Bacon Using MooTools article. The MooTools in my article contained a lot of conditional code to require correct dropping per the game and many people requested that I simplify the process and just...
![MooTools Font-Size Scroller with Cookie Save]()
Providing users as many preferences as possible always puts a smile on the user's face. One of those important preferences is font size. I can see fine but the next guy may have difficulty with the font size I choose. That's why...
Why do you have the
-sflag in there? Looking at the--helpforcp, that’s the option to “make symbolic links instead of copying”, and according to Stack Overflow http://stackoverflow.com/questions/1240636 , that doesn’t even work recursively (with the-Rflag). (Nor can I see why you would want to copy an entire directory recursively only for it to be populated with symlinks, especially “for the sake of backup”.) Typo?EDIT: David has since corrected the error in question.
Another great option that I somehow always forget to use is -a (archive), used like so:
It copies structure and permissions and also preserves symlinks.
Just use rsync, faster and more options. )
Good to know. But I agree with @John
I prefer to use rsync for this purpose