Velvet Star Monitor

Standout celebrity highlights with iconic style.

news

How to untar an archive without the root folder, but keeping the full hierarchy inside it?

Writer Sophia Terry

If I’ve got a .tar archive, and when I extract it, it gives me a single folder foo containing some more stuff, like this:

foo/ something.txt another.txt bar/ something-else.txt

Is there a way I can modify the .tar command to “skip” the root folder (foo in this case) and just extract all the contents of that folder directly into my cwd like this:

something.txt
another.txt
bar/ something-else.txt

1 Answer

Easy. Just use --strip-components=1 on the archive like this:

tar -xf archive.tar --strip-components=1

And as explained in the official tar man page:

--strip-components=NUMBER

strip NUMBER leading components from file names on extraction

With the logic being that if a path consists of foo/something.txt then the first “component” of that path would be foo/ so --strip-components=1 would effectively drop the foo/ from the path foo/something.txt.

1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy