tar.gz files I downloaded wouldn't work because they didn't actually use gzip compression despite the filename. Note that because it's primarily designed as a preprocessor for less, it won't output anything if it doesn't recognise the file type. For files matching the tar.gz extension, we can see that it uses tar tzvf under the hood along with the -force-local option to disable an obscure feature of tar that would otherwise confuse colons in the filename with a command to use a remote tape drive: *.tar.gz|*.tgz|*.tar.z|*.tar.dz) The secret here is that you need to specify your filename just as it is in the tar. If feeling adventurous, take a peak at vi /usr/bin/lesspipe to see what commands it uses. Now, to answer the question, if you want to un-tar one file named 'my-desired-file' from a tar archive named 'my-archive.tgz', and assuming the archive is compressed as most are these days, you'd use a command like this: tar xzvf my-archive.tgz my-desired-file. It is called by the less command ( see Oli's answer) as an input preprocessor if the $LESSOPEN environment variable is set appropriately. Download from the web and untar in one step from the Linux command line Read more. rw-rw-r- ubuntu/ubuntu 7 05:32 example/ubuntu.txt rw-rw-r- ubuntu/ubuntu 7 05:32 example/ask.txt $ lesspipe ĭrwxrwxr-x ubuntu/ubuntu 0 05:32 example/ Lesspipe is a shell script installed by default as part of the less package that can list the contents of a tar.gz archive, as well as a range of other common archive file formats. You can then list the contents of any archive: $ list_archive.sh foo.rar foo.tbz foo.zipĠ 8 0% 30-03-15 19:29 -rw-r-r- 00000000 m3b 2.9Ġ 0 0% 30-03-15 19:29 drwxr-xr-x 00000000 m0 2.0Īnd since someone mentioned that lesser editor, naturally, emacs can also do this: Save that script in your PATH and make it executable. Type zip >/dev/null 2>&1 & zip -sf "$file"||Įcho "Unknown extension: '$ext', skipping." Type rar >/dev/null 2>&1 & rar v "$file"|| Type tar >/dev/null 2>&1 & tar tf "$file"|| # have extensions like tar.bz2 or tar.gz etc. With all this in mind, you could write a little script that uses the appropriate command depending on the extension of the file you give to it: #!/usr/bin/env bashįor file in "\n-\nArchive '%s'\n-\n" "$file" That's most of the more popular archive formats. RAR 4.20 Copyright (c) 1993-2012 Alexander Roshal To extract just one file, that's tar -xf /tmp/itunes20140618.tar itunes20140618/video. You can untar the resulting file with tar -xf /tmp/itunes20140618.tar. bzip2 doesn't create a tar: it decompresses what is given to it, and since it is given a compressed tar, the output is an uncompressed tar. P7zip Version 9.20 (locale=en_US.utf8,Utf16=on,HugeFiles=on,4 CPUs) You're left with the uncompressed tar archive. Tar/ tar.gz/ tgz/ tar.xz/ tar.bz2/ tbz files $ tar tf foo.tgzħ-Zip 9.20 Copyright (c) 1999-2010 Igor Pavlov tgz file, you can use a tool such as tar (on Unix and Linux) or a file compression utility like 7-Zip or WinRAR (on Windows). Most (de)compression programs have a flag that lists an archive's contents.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |