tail head cat sleep
QR code linking to this page

Manual Pages  — SHAR


shar – create a shell archive of files



shar file ...


The shar command writes a sh(1) shell script to the standard output which will recreate the file hierarchy specified by the command line operands. Directories will be recreated and must be specified before the files they contain (the find(1) utility does this correctly).

The shar command 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 BSD 4.4 .


The shar command makes no provisions for special types of files or files containing magic characters. The shar command cannot handle files without a newline (' ) as the last character.

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). Archives produced using this implementation of shar may be easily examined with the command:

egrep -v '^[X#]' shar.file

SHAR (1) June 6, 1993

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.