ar [-]p[mod [relpos] [count]] archive [member...] ar -M [ <mri-script ]
gnu arは,アーカイブの作成,変更,そして,それからの抽出 を行います.アーカイブ(archive)とは,(アーカイブのメンバー (members)と呼ばれる)元となる個々のファイルを取り出すことが可能な構造の ファイル中に,他のファイルの集合を保持している単一のファイルです.
元のファイルの内容,モード(許可),タイムスタンプ,所有者,そしてグルー プは,アーカイブに保存されていて,抽出時に復元することが可能です.
gnu arは,任意の長さのメンバー名のアーカイブを管理するこ とが可能です.しかし,arがシステムでコンフィグレーションされ た方法に依存し,他のツールで管理されるアーカイブのフォーマットの互換性 のため,メンバー名の長さは制限される可能性があります.それが存在する場 合,制限は15文字(a.out に関連するフォーマットの典型)や16文字(coffに関連 するフォーマットの典型)のことが多いでしょう.
この種のアーカイブは,一般に必要なサブルーチンを保持するライブラリ (libraries)として最もよく使用されるので,arは,バイナリユー ティリティと考えられます.
arは,修飾子‘s’を指定したとき,アーカイブの再配置可能な オブジェクトモジュールに定義されているシンボルに索引を作成します.一度 作成されると,(‘q’更新コマンドでの保存で)arがその内容を 変更したときは,アーカイブ内で毎回この索引が更新されます.そのような索 引をもつアーカイブは,ライブラリとのリンク速度を上げ,ライブラリのルー チンがアーカイブ内の位置に関わらず,お互いの呼び出しを可能にします.
この索引テーブルをリストアップするため,‘nm -s’や‘nm --print-armap’を使用してもかまいません.アーカイブに表が無い場合, ranlibと呼ばれるarの別の形式を,表に加えるために使 用することが可能です.
gnu arは,二つの異なる機能を用いて互換性があるように設計 されています.Unixシステム上の様々な形態のarのように,コマン ドラインオプションを使用してその作業を制御することが可能です.また,単 一のコマンドラインオプション-Mを指定した場合,MRI “librarian”プログラムのように,標準入力を通じて供給されるスクリプトを 用いて,それを制御することが可能です.