img title=“I don’t know what’s worse–the fact that after 15 years of using tar I still can’t keep the flags straight, or that after 15 years of technological advancement I’m still mucking with tar flags that were 15 years old when I started.”
A little trick I learned on here was to imagine yourself as a little evil man saying “Extract ze files!” in a German accent. Extract ze files >>> xzf.
Only works for tar.gz. Remember there’s also tar.xz, tar.bz, tar.bz2 and half have their own extractor flag. FUN. It’s usually J.
Wouldn’t tar --help suffice? Afaik, it returns exit code 0.
tar xzvf file.tar.gz
I got it memorized after installing gentoo over and over again from stage 3 back in 2005Surely
tar --help
is a valid tar command, right?Normally I would say view the man page (as a command). Though for some reason when making the thinnest distro possible, the OS team at my job got rid of man.
Wtf man.
man wtf
If you can’t tar to a pipe into ssh to a remote host and untar into an arbitrary location there, are you really using Unix?
I had to pipe dd through gzip over SSH recently to locally image a disk on a cloud server. That was fun.
tar --help
is a valid commandMore of a request than a command, I’d have argued
I command you to show me the manual
xtract ze vucking file
Then comes a .tar.bz2 file along and you’re screwed. xtract je vucking file?
Pro tip: -z, -j are not needed by tar anymore since many years, tar will autodetect what compression was used if your distro is anything remotely modern.
Pro tip: -z, -j are not needed by tar anymore since many years, tar will autodetect what compression was used if your distro is anything remotely modern.
😵
You still might want to do something like alias pbtar='tar --use-compress-prog=pbzip2 to easily use pbzip2 - unless you have an ancient system that’ll speed things up significantly. And even if you don’t it’d be nice to use it for creation - to utilize more than one core the archive needs to be created for parallel extraction.
tar xvf somearchive.tar
Is that right? )= I’m scared I lost.
user@server:~> tar xvf somearchive.tar
tar: somearchive.tar: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
Scheiße…
tar -xzvf archive.tar.gz
eXtract Zhe Vucking File
Sorry, it was Solaris - you just blew it up (the minus is invalid on many Unix versions of tar)
tar
Done. That’s a valid command, no error code, nothing. KISS!
I know this is a meme, but I actually find
tar
fairly easy to remember.tar -xf $archive
is extract filetar -czf $archive dir/
is create zipped (compressed) file and the positional arguments are the files to add to the archive.And this is 99% of my usage. You can skip
-f $archive
to use stdin/stdout or use-C
to change directory (weird name but logically tar always extracts to the current directory). There is also a flag to list which I always forget and lookup each time, but I list much less often.-v
is useful for verbose.Overall there are much harder commands to remember.
find
always gets me if I go beyond-name
.ps
,tree
andls
(beyond-Al
) always get me to open the man page.There is also a flag to list which I always forget and lookup each time
That would be
-t
, which I tend to remember as “test”, as in testing to see what is inside the archive!tealdeer is a great program to have installed for easily getting a breakdown of the flags of pretty much any CLI app that at least I can ever think of!