补充说明
ar命令 是一个建立或修改备存文件,或是从备存文件中抽取文件的工具,ar可让您集合许多文件,成
为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限.
语法
ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] archive files...Usage: ar [emulation options] [-]{dmpqrstx}[abcDfilMNoPsSTuvV] [--plugin] [member-name] [count] archive-file file...ar -M [<mri-脚本]
选项
ar
(archive)命令是Linux系统中用于创建、修改和提取归档文件的命令。它支持多种归档文件格式,如.a
(静态库文件)和.o
(目标文件)。
下面是ar
命令的语法和语法说明:
选项 | 功能 |
---|---|
-c | 创建归档文件 |
-r | 将文件添加到归档文件中 |
-d | 从归档文件中删除文件 |
-t | 列出归档文件中的文件 |
-x | 从归档文件中提取文件 |
-u | 更新归档文件中的文件 |
-m | 在归档文件中移动文件 |
-p | 显示归档文件的头部信息 |
-s | 为归档文件创建索引 |
-M | 指定自定义的魔术数字(归档文件类型) |
-E | 使用长名称(64位)存储成员名 |
-S | 为每个成员生成符号表 |
-i | 生成索引后,插入成员到指定位置 |
-k | 保留已存在的输出文件 |
-l | 生成一个文本列表,包含归档文件中的成员名和字节偏移量 |
-q | 静默模式,不输出任何信息 |
-v | 详细模式,输出更多信息 |
-f | 指定归档文件的名称 |
-A | 添加日期戳到归档文件中的成员 |
-P | 使用完整的路径名存储成员名 |
-T | 从指定的模板文件中读取成员名和字节偏移量 |
-@ | 从指定的文件中读取成员名和字节偏移量 |
示例:
# 创建归档文件$ ar -rc libexample.a example1.o example2.o# 列出归档文件中的文件$ ar -t libexample.a# 从归档文件中提取文件$ ar -x libexample.a example1.o
选项参数
--plugin - 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 qteanaconda-ks.cfg c.c Desktop[root@localhost ~]# ar rv one.bak a.c b.c # 打包 a.c b.c文件ar: 正在创建 one.baka - a.ca - b.c
打包多个文件
[root@localhost ~]# ar rv two.bak *.c // 打包以.c结尾的文件ar: 正在创建 two.baka - a.ca - b.ca - c.ca - d.c
显示打包文件的内容
[root@localhost ~]# ar t two.baka.cb.cc.cd.c
删除打包文件的成员文件
[root@localhost ~]# ar d two.bak a.c b.c c.c[root@localhost ~]# ar t two.bakd.c