Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ (1) — Plan9 4th Edition

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

2l(1)

ar(6)

AR(1)

NAME

ar − archive and library maintainer

SYNOPSIS

­ar ­key [ ­posname ] ­afile [ ­file ...  ]

DESCRIPTION

­Ar maintains groups of files combined into a single archive file, afile. The main use of ­ar is to create and update library files for the loaders 2l(1), etc. It can be used, though, for any similar purpose.

­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 for (i in ∗.v) ar r lib.a $i. 

­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 r. 

­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

­l Local.  Normally ­ar places its temporary files in the directory /tmp.  This option causes them to be placed in the local directory. 

When a d, r, or m ­key is specified and all members of the archive are valid object files for the same architecture, ­ar inserts a table of contents, required by the loaders, at the front of the library.  The table of contents is rebuilt whenever the archive is modified, except when the ­q ­key is specified or when the table of contents is explicitly moved or deleted. 

EXAMPLE

ar cr lib.a ∗.v
Replace the contents of library ­lib.a with the object files in the current directory. 

FILES

­/tmp/v∗ temporaries

SOURCE

­/sys/src/cmd/ar.c

SEE ALSO

2l(1), ar(6)

BUGS

If the same file is mentioned twice in an argument list, it may be put in the archive twice. 
This command predates Plan 9 and makes some invalid assumptions, for instance that user id’s are numeric.

Plan 9  —  March 15, 2004

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026