How to extract a single file from tar to a different directory?

UnixTar

Unix Problem Overview


I know that I can use following command to extract a single file to the current working directory (assume I have a tar file named test.tar and a file named testfile1 and testfile2 are inside it):

$tar xvf test.tar testfile1

And I can use -C option to extract files to another directory:

$tar xvf test.tar -C anotherDirectory/

When I incorporate the above two techniques together, I suppose that I can extract a single file to another directory.

$ tar xvf test.tar testfile1 -C anotherDirectory/

But the result is I can only extract the testfile1 to the current working directory, rather than the anotherDirectory.

I want to know how can I extract a single file from tar to a different directory?

Unix Solutions


Solution 1 - Unix

The problem is that your arguments are in incorrect order. The single file argument must be last.

E.g.

$ tar xvf test.tar -C anotherDirectory/ testfile1

should do the trick.

PS: You should have asked this question on superuser instead of SO

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionMengTView Question on Stackoverflow
Solution 1 - UnixKimvaisView Answer on Stackoverflow