Section: LOCAL COMMANDS (1L)
Updated: 11 Nov 1991
Return to Main Contents
arc - pc archive utility
a|m|u|f|d|x|e|r|p|l|v|t|c [ biswnoq ] [ gpassword ]
[ filename ...]
is a general archive and file compression utility, used to maintain
a compressed archive of files.
is a single file that combines many files, reducing storage space
and allowing multiple files to be handled as one.
uses one of several compression methods for each file within the
based on whichever method yields the smallest result.
with no arguments for fairly verbose, usable instructions.
add files to archive. Copies the indicated files to the archive.
move files to archive. Same as 'a' switch except
that the files are deleted from the directory as
they are moved to the archive.
update files in archive. This switch will replace archived
files when the named file is newer than the archived copy.
New files will be added automatically.
freshen files in archive. Same as 'u' except that
new files will not be added.
delete files in archive. The named files are removed from the archive.
extract files from archive. The named files are extracted
from the archive and created in the current directory
in an uncompressed state.
run one file with arguments from archive. Any
program may be executed directly from the archive.
The parameters given after the program name are passed to
the program without modification.
copy files from archive to standard output. Useful
with I/O redirection. A form-feed is appended after each file,
to ease use with printers.
list files in archive. Limited information listing
of files contained in an archive. Displays the
filename, original length, and date last modified.
If the 'n' option (see below) is used, only the
filename is displayed.
verbose listing of files in archive. Complete
information listing of files contained in an archive.
Displays the filename, original length, storage method,
storage factor (% savings), compressed size, date, time,
test archive integrity. Computes CRC values for each member of
the archive and compares against the previously saved value.
convert entry to new packing method. Convert files
stored with older methods to newer methods that are
more efficient. Also useful for files previously
archived with the 's' option.
retain backup copy of archive. Keep the original
archive file and rename to .BAK.
This switch may be used with the
following commands: a, m, u, f, d, c.
suppress image mode. This switch causes files to
be treated as text files, and will translate their
end-of-line sequence. (Unix's '\n' vs. '\r\n' used
on many other systems.) The default is to perform
no translation when compressing or extracting files.
This option makes dealing with text files much nicer,
though the 'tr' command can also be used. ('\r' in
makefiles and C source code is such a nuisance...)
suppress compression. This forces new files to be
saved using Method 2 (no compression). This switch
may be used with the following commands: a, m, u, f, c.
suppress warning messages. This switch will keep
warning messages from being displayed which is the default.
Most warnings concern the deletion or existence of
files with the same name.
suppress notes and comments. This switch will keep
useful notes from being displayed which is the default.
Most notes indicate what stage of compression is
being run (analyze, compaction, storage).
overwrite existing files when extracting. This switch
will make existing files silently get overwritten, instead
of asking for confirmation, which is the default.
force Squash compression method. This switch causes
the Squash compression method to be used, instead of
Crunch, which is the default.
encrypt/decrypt archive entry. This is used to encode
files so that others may not read them. BE CAREFUL!
This must be the last parameter in the switches because
everything following is part of the password.
Version 2 differs from version 1 in that archive entries
are automatically compressed when they are added to the archive,
making a separate compression step unecessary. The nature of the
compression is indicated by the header version number placed in
each archive entry, as follows:
1 = Old style, no compression
2 = New style, no compression
3 = Compression of repeated characters only
4 = Compression of repeated characters plus Huffman SQueezing
5 = Lempel-Zev packing of repeated strings (old style)
6 = Lempel-Zev packing of repeated strings (new style)
7 = Lempel-Zev Williams packing with improved hash function
8 = Dynamic Lempel-Zev packing with adaptive reset
9 = Squashing
Type 5, Lempel-Zev packing, was added as of version 4.0
Type 6 is Lempel-Zev packing where runs of repeated characters
have been collapsed, and was added as of version 4.1
Type 7 is a variation of Lempel-Zev using a different hash
function which yields speed improvements of 20-25%, and was
added as of version 4.6
Type 8 is a different implementation of Lempel-Zev, using a
variable code size and an adaptive block reset, and was added
as of version 5.0
Type 9 is another variation of Lempel-Zev, using a larger
hash table. This method was developed by Phil Katz, and is
not supported by the "official" ARC programs.
will look for environment variables named ARCTEMP or
TMPDIR, which, if present, indicates the pathname
where temporary files should be created. This is typically
the location of a RAMdisk on a microcomputer, "/tmp/" or
See the included documentation file for more details.
Arc has been in use in the CP/M and MSDOS world for many years.
Thom Henderson developed the original version, but it is important to note that
arc is based on the file compression theories developed by Huffman, Welch,
Knott, Knuth, and many other scientists. This implementation is based on
version 5.21 of the MSDOS program.
Arc behaves just like the PC version of the program; all functions
of the "usage" display are working.
Full compatibility with PC ARC files is maintained, the price for which is
that arc doesn't like long filenames, and can only archive files with
names of up to 12 characters.
It will *sometimes* do The Right Thing with them, but I suggest
you put long-winded filenames in a "shar" before
There shouldn't be any problems, (hah!) but if you find any, please
send them to me at:
Original MSDOS program by Thom Henderson
COPYRIGHT(C) 1985-87 by System Enhancement Associates; ALL RIGHTS RESERVED
Original Lempel-Zev code derived from compress 4.0.
Modified to support Squashing by Dan Lanciani (email@example.com)
Ported from MSDOS by Howard Chu,
with help from John Gilmore (hoptoad!gnu), James Turner (daisy!turner)
- COMMAND SWITCHES
- PROGRAMMING NOTES
linux.jgfs.net manual pages