Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ar(1) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cpio(1)

pax(1)

tar(1)

ld(1)

lorder(1)

strip(1)

a.out(4)

ar(4)

ar(1)                                                                 ar(1)

NAME
     ar - Bibliotheken verwalten (archive maintainer)

SYNTAX
     ar [-V] hauptoption [zusatzoption]... [position] [--] bibliothek
        [datei]...

BESCHREIBUNG
     ar verwaltet Bibliotheken.

     -V   ar gibt seine Versionsnummer auf die Standardfehlerausgabe aus.

     Im einzelnen können Sie mit ar folgende Verwaltungsaufgaben erledigen:

     __________________________________________________________
    | Verwaltungsaufgabe                        |  Hauptoption|
    |___________________________________________|_____________|
    | Bibliothek erstellen                      |  -q oder -r |
    |___________________________________________|_____________|
    | Datei schnell in die Bibliothek eintragen |  -q         |
    |___________________________________________|_____________|
    | Datei ersetzen bzw. eintragen             |  -r         |
    |___________________________________________|_____________|
    | Datei aus der Bibliothek entfernen        |  -d         |
    |___________________________________________|_____________|
    | Datei in der Bibliothek verschieben       |  -m         |
    |___________________________________________|_____________|
    | Dateiinhalt ausgeben                      |  -p         |
    |___________________________________________|_____________|
    | Inhaltsverzeichnis der Bibliothek ausgeben|  -t         |
    |___________________________________________|_____________|
    | Datei aus der Bibliothek herauskopieren   |  -x         |
    |___________________________________________|_____________|

   Aufbau einer Bibliothek

     Eine Bibliothek ist eine Datei, in der mehrere Dateien zusammengefaßt
     sind. Gemäß Konvention endet der Name einer Bibliothek mit .a. Der
     Sinn einer Bibliothek besteht darin, Dateien zusammenzufassen, die
     bezüglich ihrer Verwendung eine Gruppe bilden. Die Verwendung von
     Bibliotheken erleichtert die Verwaltung der Dateien, da Sie oft nur
     die Bibliothek angeben müssen, statt alle Elemente einzeln aufzufüh-
     ren.

     Sehr häufig sind die Elemente einer Bibliothek Objektmodule, die übli-
     cherweise zu einem Programm oder Programmsystem gehören.

     Die Magic-Zeichenkette (magic string) und der Dateivorspann (header),
     die ar benutzt, bestehen aus druckbaren ASCII-Zeichen. Enthält die
     Bibliothek nur druckbare Dateien, so ist die ganze Bibliothek druck-
     bar.




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

ar(1)                                                                 ar(1)

     Wenn ar eine Bibliothek erzeugt, dann erzeugt es den Dateivorspann
     (header) in einem Format, das über alle Rechner portabel ist [zum por-
     tablen Format und Aufbau einer Bibliothek siehe ar(4)].

     Enthält die Bibliothek mindestens eine Objektdatei, erstellt und ver-
     waltet ar eine Symboltabelle. Der Binder ld benutzt die Symboltabelle,
     um bei mehrfach notwendigem Durchlaufen der Bibliothek dieses Durch-
     laufen zu beschleunigen. Die Symboltabelle steht in einer eigenen
     Datei, die immer die erste Datei in der Bibliothek ist. Auf diese
     Datei können Sie nicht zugreifen, und sie wird auch nicht wie andere
     Bibliotheksdateien aufgelistet oder ausgegeben. Wird die Bibliothek
     mit ar neu erzeugt oder aktualisiert, dann erstellt ar auch die Sym-
     boltabelle neu. ar mit Option -s erstellt ebenfalls die Symboltabelle
     neu.

OPTIONEN
   Hauptoptionen

     Bei einem ar-Aufruf müssen Sie genau eine Hauptoption angeben (-d, -m,
     -p, -q, -r, -t oder -x). Der Hauptoption können eine oder mehrere
     Zusatzoptionen folgen.

     -d   (d - delete) ar entfernt die angegebenen Dateien aus der Biblio-
          thek. Sind keine Dateien angegeben, wird keine Datei entfernt.

     -m   (m - move) ar verschiebt die angegebenen Dateien innerhalb der
          Bibliothek.

          Mit position:

          Die Dateien werden hinter (-a) bzw. vor (-b oder -i) der Datei
          posdatei eingefügt (siehe position).

          Ohne position:

          Die Dateien werden am Ende der Bibliothek eingefügt.

     -p   (p - print) ar gibt den Inhalt der angegebenen Dateien aus. Sind
          keine Dateien angegeben, gibt ar den Inhalt aller Dateien aus.

     -q   (q - quickly) ar trägt die angegebenen Dateien "schnell" in die
          Bibliothek ein, d. h.:

          -  Wenn die Bibliothek bereits existiert, hängt ar die Dateien
             ans Ende der Bibliothek an, ohne zu überprüfen, ob die Dateien
             bereits in der Bibliothek vorhanden sind.

          -  Wenn die Bibliothek noch nicht existiert, wird sie erstellt.

          Angaben für position sind nicht erlaubt.




Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

ar(1)                                                                 ar(1)

          Die Option -q ist sinnvoll, wenn Sie große Bibliotheken schritt-
          weise erstellen wollen.

     -r   (r - replace) Diese Option hat drei verschiedene Wirkungen,
          abhängig davon, ob die angegebene Bibliothek existiert und die
          angegebenen Dateien enthält:

          -  Wenn die Bibliothek existiert und die Dateien enthält, ersetzt
             ar die angegebenen Dateien.

          -  Wenn die Bibliothek existiert und eine der angegebenen Dateien
             nicht enthält, trägt ar diese Datei in die Bibliothek ein.

          -  Wenn die Bibliothek noch nicht existiert, erstellt ar die
             Bibliothek aus den angegebenen Dateien.

          Mit Zusatzoption -u:

          ar ersetzt eine Datei in der Bibliothek nur dann, wenn die beim
          ar-Aufruf angegebene Datei neueren Datums ist als die Version,
          die in der Bibliothek steht. (Das Datum bezieht sich auf den
          Zeitpunkt der letzten Änderung.)

          Mit position:

          Dateien, die noch nicht in der Bibliothek enthalten sind, werden
          hinter (-a) bzw. vor (-b oder -i) der Datei posdatei eingefügt
          (siehe position).

          Ohne position:

          Dateien, die noch nicht in der Bibliothek enthalten sind, werden
          am Ende der Bibliothek eingefügt.

     -t   (t - table) ar gibt ein Inhaltsverzeichnis der Bibliothek aus.
          Sind keine Dateien angegeben, listet ar alle Dateien der Biblio-
          thek auf, sonst nur die angegebenen Dateien.

     -x   (x - extract) ar kopiert die angegebenen Dateien aus der Biblio-
          thek heraus. Sind keine Dateien angegeben, kopiert ar alle
          Dateien heraus. Die Bibliothek wird dadurch nicht verändert.

   Zusatzoptionen

     -c   (c - create) Die Standard-Meldung von ar beim Erstellen einer
          Bibliothek wird unterdrückt.

     -C   (C - create) Überschreibschutz. -C verhindert, daß bei der Extrak-
          tion mittels -x Dateien mit ähnlichen Namen überschrieben werden.

     -l   (l - local) Temporäre Dateien werden im aktuellen Verzeichnis
          abgelegt.


Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

ar(1)                                                                 ar(1)

     -s   (s - symbol table) ar erstellt die Symboltabelle der Bibliothek
          neu (auch dann, wenn die Bibliothek nicht verändert wird).

          Diese Option ist sinnvoll, um die Symboltabelle nach einem
          strip-Aufruf wiederherzustellen [siehe strip(1)].

     -T   (T - truncate) ar verkürzt Dateinamen, wenn diese für das aktu-
          elle Dateisystem zu lang sind. Die Option sollte aus Sicherheits-
          gründen nur zusammen mit -C verwendet werden.

          -T nicht angegeben:

          Dateien mit zu langen Namen können von ar nicht extrahiert wer-
          den.

     -u   (u - update) Siehe Hauptoption -r.

     -v   (v - verbose) ar meldet, welche Datei es gerade in die Bibliothek
          einträgt, in der Bibliothek verschiebt, aus der Bibliothek ent-
          fernt usw. Wenn Sie -v zusammen mit -t verwenden, gibt ar ähnlich
          wie ls -l (siehe ls) ausführliche Informationen über die Dateien
          aus.

     position
          position legt fest, wo eine Datei in die Bibliothek eingefügt
          wird. position kann sein:

          -a posdatei
               ar fügt die Dateien hinter posdatei ein.

          -b posdatei
          -i posdatei
               ar fügt die Dateien vor posdatei ein.

          posdatei ist der Name einer Datei, die in der Bibliothek steht.

     --   Ende der Optionenliste. Die Angabe ist nötig, wenn bibliothek mit
          - beginnt.

     bibliothek
          Name der Bibliothek, die erstellt bzw. bearbeitet werden soll.

     datei
          Name der Datei, die aufgelistet, in die Bibliothek eingetragen,
          aus der Bibliothek entfernt, aus der Bibliothek herauskopiert, in
          der Bibliothek verschoben bzw. deren Inhalt ausgegeben werden
          soll.







Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

ar(1)                                                                 ar(1)

          Sie können mehrere Dateien angeben. Geben Sie bei einem ar-Aufruf
          mit Hauptoption -q oder -r dieselbe Datei mehrmals an, trägt ar
          diese Datei auch mehrmals in die Bibliothek ein. Wenn mehrere
          Dateien mit gleichem Namen in der Bibliothek enthalten sind, und
          Sie ar ohne Positionsangabe verwenden, wird auf die erste Datei
          mit diesem Namen zugegriffen (und nicht z. B. auf die neueste
          oder älteste usw).

INTERNATIONALE UMGEBUNG
     Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
     texte.

     Die Umgebungsvariable LCTIME bestimmt das Format der Datums- und
     Zeitangaben bei der Auflistung des Archivinhalts mit der Option v.

     Wenn LCMESSAGES oder LCTIME nicht oder als leere Zeichenkette defi-
     niert ist, wird der Wert von LANG als Standardwert für die jeweils
     nicht gesetzte oder leere Variable herangezogen. Ist auch LANG nicht
     oder als leere Zeichenkette definiert, verhält sich das System so, als
     wäre es nicht internationalisiert.

     Hat eine der Variablen für die internationale Umgebung einen ungülti-
     gen Wert, verhält sich das System so, als wäre keine Variable gesetzt.

     Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
     bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
     Bereich der Internationalisierung.

BEISPIELE
     Beispiel 1

     Eine Bibliothek schnell erstellen:

     $ ar -q -v archiv.a atoi.o itoa.o
     ar: creating archiv.a
     a - atoi.o
     a - itoa.o

     ar erstellt die Bibliothek archiv.a aus den Dateien atoi.o und itoa.o.
     Die Zusatzoption v bewirkt, daß ar die Namen der eingetragenen Dateien
     ausgibt.

     Beispiel 2

     Eine neue Datei an einer angegebenen Stelle in eine Bibliothek einfü-
     gen:

     $ ar -r -v -b atoi.o archiv.a atof.o
     a - atof.o

     ar kopiert atof.o vor atoi.o in die Bibliothek archiv.a.



Seite 5                      Reliant UNIX 5.44               Gedruckt 11/98

ar(1)                                                                 ar(1)

     Beispiel 3

     Inhaltsverzeichnis der Bibliothek ausgeben:

     $ ar -t -v archiv.a
     rw-r--r-- 104/     1      2276 Jul 13 12:17 1990 atof.o
     rw-r--r-- 104/     1       759 Jul 13 12:17 1990 atoi.o
     rw-r--r-- 104/     1      1280 Jul 13 12:17 1990 itoa.o

     Beispiel 4

     Eine Datei aus der Bibliothek holen:

     $ ar -x -v archiv.a atoi.o
     x - atoi.o

     Die Datei atoi.o wird aus der Bibliothek archiv.a in das aktuelle Ver-
     zeichnis kopiert. Die Kopie heißt auch atoi.o.

SIEHE AUCH
     cpio(1), pax(1), tar(1), ld(1), lorder(1), strip(1), a.out(4), ar(4).

































Seite 6                      Reliant UNIX 5.44               Gedruckt 11/98

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