ar key [ posname ] afile [ file
... ]
Ar maintains groups of files combined into a single archive
file, afile. The main use of ar is to produce and manipulate
UNIX archive files, for instance to create program packages for Debian
Linux. Note that only iar(10.1) can manage archives used as object
file libraries by the Inferno and Plan 9 loaders.
Key is one character from the set drqtpmx,
optionally concatenated with one or more of vuaibclo. The
files are constituents of the archive afile. The meanings of
the key characters are:
- d
- Delete files from the archive file.
- r
- Replace files in the archive file, or add them if missing. Optional
modifiers are
- u
- Replace only files with modified dates later than that of the
archive.
- a
- Place new files after posname in the archive rather than at the
end.
- b or i
- Place new files before posname in the archive.
- q
- Quick. Append files to the end of the archive without checking for
duplicates. Avoids quadratic behavior in
- t
- List a table of contents of the archive. If names are given, only those
files are listed.
- p
- Print the named files in the archive.
- m
- Move the named files to the end or elsewhere, specified as with
- o
- Preserve the access and modification times of files extracted with the
x command.
- x
- Extract the named files. If no names are given, all files in the archive
are extracted. In neither case does x alter the archive file.
- v
- Verbose. Give a file-by-file description of the making of a new archive
file from the old archive and the constituent files. With p,
precede each file with a name. With t, give a long listing of all
information about the files, somewhat like a listing by ls (1),
showing
- mode uid/gid size date name
- c
- Create. Normally ar will create a new archive when afile
does not exist, and give a warning. Option c discards any old
contents and suppresses the warning.
2l(10.1), iar(10.1), ar(10.6)
If the same file is mentioned twice in an argument list, it may be
put in the archive twice.
The file format used by this command is taken from UNIX, and makes some
invalid assumptions, for instance that user IDs are numeric.