建立或修改備存文件,或是從備存文件中抽取文件
ar命令 是一個建立或修改備存文件,或是從備存文件中抽取文件的工具,ar可讓您集合許多文件,成為單一的備存文件。在備存文件中,所有成員文件皆保有原來的屬性與權限
ab(選項)(參數)
Usage: ar [emulation options] [-]{dmpqrstx}[abcDfilMNoPsSTuvV] [--plugin <name>] [member-name] [count] archive-file file...
ar -M [<mri-腳本]
d - 從歸檔文件中刪除文件
m[ab] - 在歸檔文件中移動文件
p - 打印在歸檔文件中找到的文件
q[f] - 將文件快速追加到歸檔文件中
r[ab][f][u] - 替換歸檔文件中已有的文件或加入新文件
s - act as ranlib
t - 顯示歸檔文件的內容
x[o] - 從歸檔文件中分解文件
特定命令修飾符:
[a] - 將文件置于 [成員名] 之后
[b] - 將文件置于 [成員名] 之前 (于 [i] 相同)
[D] - use zero for timestamps and uids/gids
[U] - use actual timestamps and uids/gids (default)
[N] - use instance [count] of name
[f] - truncate inserted file names
[P] - 在匹配時使用完整的路徑名
[o] - 保留原來的日期
[u] - 只替換比當前歸檔內容更新的文件
通用修飾符:
[c] - 不在必須創建庫的時候給出警告
[s] - 創建歸檔索引 (cf. ranlib)
[S] - 不要創建符號表
[T] ? ? ? ? - 做一個壓縮檔案
[v] - 輸出較多信息
[V] - 顯示版本號
@<file> - 從<file>讀取選項
--target=BFDNAME - 將目標對象格式指定為BFDNAME
選項參數
--plugin <p> - load the specified plugin
ar:支持的目標: elf64-x86-64 elf32-i386 elf32-x86-64 a.out-i386-linux pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex
打包文件
[root@localhost ~]# ls //顯示當前目錄文件
a.c b.c d.c install.log qte
anaconda-ks.cfg c.c Desktop
[root@localhost ~]# ar rv one.bak a.c b.c //打包 a.c b.c文件
ar: 正在創建 one.bak
a - a.c
a - b.c
打包多個文件
[root@localhost ~]# ar rv two.bak *.c //打包以.c結尾的文件
ar: 正在創建 two.bak
a - a.c
a - b.c
a - c.c
a - d.c
顯示打包文件的內容
[root@localhost ~]# ar t two.bak
a.c
b.c
c.c
d.c
刪除打包文件的成員文件
[root@localhost ~]# ar d two.bak a.c b.c c.c
[root@localhost ~]# ar t two.bak
d.c