MirBSD manpage: shar(1)
SHAR(1) BSD Reference Manual SHAR(1)
shar - create a shell archive of files
shar file [...]
shar writes an sh(1) shell script to the standard output which will re-
create the file hierarchy specified by the command line operands. Direc-
tories will be recreated and must be specified before the files they con-
tain (the find(1) utility does this correctly).
shar is normally used for distributing files by ftp(1) or mail(1).
To create a shell archive of the program ls(1) and mail it to Rick:
$ cd ls
$ shar `find . -print` | mail -s "ls source" rick
To recreate the program directory:
$ mkdir ls
$ cd ls
...
<delete header lines and examine mailed archive>
...
$ sh archive
compress(1), mail(1), tar(1), uuencode(1)
The shar command appeared in 4.4BSD.
shar makes no provisions for special types of files or files containing
magic characters.
It is easy to insert trojan horses into shar files. It is strongly recom-
mended that all shell archive files be examined before running them
through sh(1). Archives produced using this implementation of shar may be
easily examined with the command:
$ egrep -v '^[X#]' shar.file
MirBSD #10-current June 6, 1993 1