Star is an enhanced implementation of tar(1).

Using Boost 1.52.0 source, 426MB, 38,974 files and 3,507 directories:

% time tar cf tar.tar *  # GNU tar 1.27.1

real    0m1.068s
user    0m0.256s
sys     0m0.780s

% time star cf star.tar *
star: 37720 blocks + 0 bytes (total of 386252800 bytes = 377200.00k).

real    0m0.915s
user    0m0.150s
sys     0m1.349s

Star is slightly faster and has a little more information on the task, but the speed is not significant in my opinion. It has many features, but the -find option is one catching my eyes:

% star tf star.tar -find -type f -iname *.html

Similar to find(1) syntax, you can filter through the content of tar at ease. It has very huge list of its advantages over other tar implementations:

  • built-in find
  • fifo
  • remote tape support
  • accurate sparse files
  • pattern matcher
  • sophisticated diff
  • no namelen limitation
  • deals with all 3 times
  • does not clobber files
  • automatic byte swap
  • automatic format detect
  • automatic compression detect
  • fully ANSI/POSIX 1003.1 compatible
  • support for ACLs and file flags
  • support for all inode metadata
  • sophisticated error control
  • ed like pattern substitutions
  • fast built-in -copy mode
  • True incremental dump/restore features

It has many automatic detection, tar implementations, the compression programs, etc. You can just use it as tar like before, only prefixing with an extra letter “s”.

Star is written by Joerg Schilling in C under GPLv2, LGPLv2.1, and CDDL, currently version 1.5.2 (2013-01-10). Its first version 1.0 was released on 1997-05-01, nearly 17 years ago.