Provided by: manpages-zh_1.5.1-2_all bug

NAME

       ar - 建立, 蚹奰仵蚸帢q檔案中抽取成.

`覽
       ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] archive files...

yz
       GNU 組織的ar 程式 用於建立, 蚹奰仵 或從檔案中 抽取成.  一  是一
       包含了 很多 其它 檔案的 單獨的 檔案, 它採用的  結構  使得  可以  很容易
       恢復 鴩 獨立的 檔案 (稱為 檔案的  ).

       鴝l檔案  (成)的  內容,  權,  時間屬性,  屬主和組都 在檔案中 得到 保留,
       在抽取時 可以 得到 恢復.

       ar  程式  維護的  檔案成  可以  擁有  一定  長度的   名字;   具體情況,
       與你系統上的ar  是怎樣  配置的  有關.  為了 與其它 工具 維護的 檔案格式
       相容, 有可能 對成 名字的 長度 有嚴格的 制, 如果 確實是 這樣, 通常  n求
       採用 15 茼r符 (典型的 格式是 a.out), 或者 16 茼r符(典型的 格式是 coff).

       ar 是一茪G進制格式的 工具, 因為  這一類  檔案  多數  都作為  保存  公共
       例程的w 使用.

       通過  指定  袡3鰥s', ar 可以 建立 指向 檔案中 可咿w位 目標 模塊 定義的
       符號表的 索引, 一旦建立, 在ar 更新 其內容時 (通過`q' 執行 更新 操作)  ,
       此索引  也會  得到  更新.   有這種  索引的  檔案  可以  加速到 庫檔案的
       連接過程, 並且 允 庫中的 例程  相互調用  而無須  考慮  它  在檔案中的
       位置.

       可以  使用`nm  -s'  或  `nm  --print-armap'  列出  這種索引,  如果 檔案
       沒有這類 索引, 可以 使用 另外 一 稱為ranlibar 程式 增加 這種  索引.

       ar  至少  需n  兩  參數  才能  運行:  一 指明 執行的@ (可能 伴隨有
       其它的), 作用的 檔案 名字.  多數 操作 可以 接受  更多的  參數,
       指明 操作的 詳細 檔案.

項
       ar 允釦A 在第一 命令行 參數中 以任意 順序 混合 指定 操作碼p 和袡3mod
       .

       只n你 願意, 也可以 用破折號 作為 命令行 第一 參數的 開始.

       p 關鍵字 指明 n執行的 操作, 只能 指明為 如下 之一:

       d      從檔案中R 模塊. 通過files 指明 n刪除的 模塊的 名稱; 如果 沒有
              指出 n刪除的 檔案 名稱, 檔案不會 改變 任何 內容.

              如果 給出了'v' 袡3,ar 會例出 它刪除的 每一 模塊.

       m      用此 操作 在檔案中 成.

              如果  某  符號名 在檔案的 多 成中 有定義, 那麼 程式 怎樣 連接
              檔案 檔案 得到的 結果 可能是 不同的.

              如果 沒有為m 指定 袡3, 由files 指出的 成 將移動到  檔案的否
              ;  可以 通過 `a', `b' 或 `i' 等袡3, 指定 成 移動的 具體 位置.

       p      在標準 輸出上 CL 檔案中 指定的 成.  如果 給出了`v' 袡3,  在
              列印 成 內容 之前, 先列印 成的 名字.

              如果沒有 指明files 參數, 檔案中 所有的 成 都會被 列印 出來.

       q      t l[; 增加 filesarchive 的末尾, 不進行 替換 檢查.

              袡3  `a'  `b'  和  `i' 影響此 操作, 新成 始終 追加到 檔案的
              末尾處.

              袡3 `v' 可以使 ar 列出 它追加的 所有檔案.

              由於 本弁 是用於 快速操作, 即使 檔案中 有 符號表 索引 也不 進行
              更新; 可以 使用 `ar s' 或 ranlib 明確 n求 更新 這些索引.

              在為快速  追加  垂 索引時,由於 有 太多 不同的 系統, 所以 GNU ar
              採用 `q' 作為 `r'的一 同義字.

       r      把檔案 files 插入 archive (  ). 本操作與 `q' 是不同的,  如果
              檔案中 已有的 某 成與 插入 檔案的 名稱 相同, 此成 將被刪除.

              如果  不存在  名稱為  files  的檔案, ar 顯示 一 錯誤 消息, 並且
              保留 檔案中 已有的 同名 成.

              預設情況下, 新成 增加到 擋案的 末尾; 可以 通過 使用 `a' `b'  或
              `i' 等袡3 指定 相對於 已有 成的 位置.

              通過  使用  `v'  袡3  會為每 插入的 檔案 產生 一行 輸出, 根據
              輸出中的 字符 `a' 或 `r' 可以 表明 該檔案  是追加的  (沒有  刪除
              以前的成) 還是 替換的.

       t      顯示  一 archive 檔案 所包含 內容的 C , 或 檔案中的 由 files
              指出的 檔案 列表.  通常 只顯示 成的 名稱, 如果 使用 `v'  袡3,
              可以 得到 成的 權, 時間屬性, 屬主, 組和 大小.

              如果 沒有 指出 files, 檔案中的 所有 檔案 都會 列出.

              如果  檔案中 (稱為 `b.a') 有多 同名 成 (稱為 `fie'), `ar t b.a
              fie' 僅僅 列出 第一; n看到 它怐 全部,  必須  n求  完整的  列表
              --在本例中是 `ar t b.a'.

       x      從檔案中      成  (名稱為 files) .  如果 使用 `v' 袡3, ar
              會列出 它抽取的 每一 檔案的 名字.

              如果沒有給出 files, 抽取 檔案中 所有的 檔案.

       可以在 操作符 p 後緊隨 一定數量的 袡3 mod 以指明 操作的 各種 行為.

       a      增加 檔案到 檔案中 已有 成   , 如果 使用了 袡3 a,  必須在
              檔案  名稱  archive  之前  以 membername 參數的 形式 給出 檔案中
              已有 成的 名字.

       b      增加 檔案到 檔案中 已有 成 e  , 如果 使用了 袡3 b,  必須在
              檔案  名稱  archive  之前  以 membername 參數的 形式 給出 檔案中
              已有 成的 名字.  (和袡3 `i' 相同).

       c        檔案.  指定的  檔案  archive  始終  會被建立,  如果  你n求
              執行的是 更新, 通過 此袡3 建立 檔案時 會給出 一 警告.

       f      截短  檔案成的  名字.  ar 通常 允 任意 長度的 檔名, 但這會 導P
              與某些  系統上的  ar  出現  相容性  問題,  使用  f  袡3   可以
              在往檔案中 追加 檔案時 把名字 截短.

       i      插入  檔案到 檔案中 已有 成 e  , 如果 使用了 袡3 i, 必須在
              檔案 名稱 archive 之前 以 membername  參數的  形式  給出  檔案中
              已有 成的 名字.  (與袡3 `b' 相同).

       l      接受此袡3, 但不起作用.

       N      使用  count  參數.  本袡3 用於 在檔案中 有多 同名 成的 情況.
              刪除 或抽取 檔案中 給定 名字的第 count 蚢磛.

       o      抽取  成時  保留  他  l    時間屬性.  如果  沒有  此袡3,
              檔案以抽取 的時間 作為 它的時間 屬性.

       P      匹配 檔案中的 名字時 使用 完整的 路徑名.  ar 不能 建立 使用 完整
              路徑名的  檔案  (這不符合  POSIX  標準),  但其它的   檔案   工具
              能夠建立,  本選項 會使 ar 在抽取 由其它 工具 建立的 檔案 檔案時,
              使用完整的 路徑名 去匹配 檔案中 成的 名字.

       s      即使 沒有對 檔案 進行 改變, 用本  袡3  也可以  往檔案中  寫一
              目標 檔案的 索引 或更新 已經 存在的 索引.  可以與 其它 操作 一起
              使用 本袡3, 也可以 單獨使用.  對一 檔案 執行  `ar  s'  與執行
              `ranlib' 等價.

       S      不生成   檔案的   符號表.   這可以  加速  建立  大的檔案  檔案的
              過程,但這樣 建立的  檔案  不能被  連接器  使用,  為建立  符號表,
              在最後  執行  `ar'  時應該 不用 `S' 袡3, 或者 對檔案 執行 一次
              `ranlib' .

       u      通常ar r... 把所有 列出的 檔案 插入到  檔案中,  如果  希望  跛
              插入比  檔案中 已有 成 更新的 檔案時, 就應該 使用 此袡3.  `u'
              袡3 僅允 與 `r' (替換) 操作 一起 使用.  某些 情況下, 由於  用
              `q'  操作  比較  檔案的  時間屬性  會失去  速度上的  優勢,  所以
              不允 執行 `qu' 組合操作.

       v      使用 本袡3  可以 進行 l 操作. 附加了此 袡3躓, 很多 操作
              會顯示 更多的 消息, 如處理的 檔名等.

       V      顯示 ar 的版本號 .

考
       info  中的  `binutils'  條目; The GNU Binary Utilities, Roland H. Pesch
       (1991年10月).  nm(1), ranlib(1).

v
       Copyright (c) 1991, 1992, 1993, 1995, 1998, 1999,  2000  Free  Software
       Foundation, Inc.

       This   document  is  distributed  under  the  terms  of  the  GNU  Free
       Documentation License, version 1.1.  That license is described  in  the
       sources  for this manual page, but it is not displayed here in order to
       make this manual more consise.  Copies of  this  license  can  also  be
       obtained from: http://www.gnu.org/copyleft/.

@H
       Yin Huaming <yhmact@pzh-public.sc.cninfo.net>

ss
       2002/06/23

 Linux manUp劃
       http://cmpp.linuxforum.net