from
The Free On-line Dictionary of Computing (8 July 2008)
shar
sharchive
shar file
<tool, file format> ("Shell archive", after {ar} and {tar})
Any of the many {Unix} programs that creates a {flatten}ed
representation of one or more files, with the unique property
that it can be unflattened (the original files extracted)
merely by feeding it through a standard {Unix} {shell}. The
output of shar, known as a "shar file" or "sharchive", can be
distributed to anyone running {Unix}, and no special unpacking
software is required.
Sharchives are intriguing in that they are typically created
by shell scripts; the script that produces sharchives is thus
a script which produces self-unpacking scripts, which may
themselves contain scripts. The disadvantage of sharchives
are that they are an ideal venue for {Trojan horse} attacks
and that, for recipients not running Unix, no simple
un-sharchiving program is possible; sharchives can and do make
use of arbitrarily-powerful shell features and other Unix
commands.
Different implementations of shar vary in sophistication.
Some just {uuencode} each input file and output commands to
{uudecode} the result, others include extensive checking to
make sure the files have been transferred without corruption
and that all parts of a multi-file sharchive have been
unpacked.
The {unshar} utility strips off mail and news headers before
passing the remainder of its input to sh.
(1996-10-18)