Linux-Noob Forums

Full Version: non-recursive Tar
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Is there a simple way to do a non-recursive tar.

 

I've come up with a few sites that say there is a flag -n for it, but the distro (fedora 3) i'm using doesn't have that option. Any other alternatives?


Quote:Is there a simple way to do a non-recursive tar.   

I've come up with a few sites that say there is a flag -n for it, but the distro (fedora 3) i'm using doesn't have that option.  Any other alternatives?



 

please explain more cause i didnt understand


hm, not sure If I can make it any clearer but I'll try. Lets say I'm making a gzip tarball.



Code:
tar -cvzf archive.tar.gz foobarDirectory/




This will tar everything in foobarDirectory including all of the subdirectories in it, hence being recursive.

 

I would like to know how would I go about taring a directory that doesn't tar its subdirectorys, but just the contents within that directory. A simple flag doesn't seem like an option as I looked in the man page and didn't see one. So, I will need to find an alternative, and if anyone could help that would be cool. It would probably involve a find piped with tar or something, but then again find is recursive also so I don't know.


Ok, after toying around I came up with this. I don't know if its the most efficient way though.

 



Code:
find foobarDir/ -name *.jpg -maxdepth 1 | xargs tar -cvzf backup.tar.gz







Code:
find foobarDir/ -name *.jpg -maxdepth 1 | xargs tar -cvzf backup.tar.gz




equals

 



Code:
tar -cvzf backup.tar.gz foobarDir/*.jpg




 

GNU tar also offers the "--no-recursion" parameter (kinda bad documented) where it skips directory contents.