main shrub/shrubtools / shar / shar.1
SHAR(1) General Commands Manual SHAR(1)

sharcreate a shell archive of files

shar file ...

shar writes an sh(1) shell script to the standard output which will recreate the file hierarchy specified by the command line operands. Parent directories for file operands are created as needed. File and directory permissions are restored.

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. It is not intended for binary files containing NUL bytes.

It is easy to insert trojan horses into shar files. It is strongly recommended that all shell archive files be examined before running them through sh(1).

May 27, 2026 Linux 6.18.35-0-lts