ar
ar命令维护一个档案文件,该档案文件为多个文件的集合。我们用ar命令最多的地方就是在写Makefile时需要将多个可重定位文件归档为一个单独的档案文件时的时候。
所以ar命令是在和一个档案文件打交道,如果把这个档案文件看作数据库的话。我们不用看ar命令的选项,想一想ar命令应该提供哪些选项来完成操作这个“数据库”的目的。
首先应该是对于档案文件整体的操作:
l 创建一个档案文件 (-c)
l 显示档案文件的构成 (-t)
接下来应该是维护档案文件和单个文件之间的映射关系的操作:
l 向库中添加文件(非覆盖模式) (-q)
l 从档案文件中提取单个文件 (-x)
l 向库中添加文件(覆盖模式) (-r)
l 从档案文件中删除一个文件 (-d)
l 添加到指定的文件之后 (-a)
l 添加到指定的文件之前 (-b)
最后是对档案文件内部的结构关系进行操作的选项:
l 更改档案文件中的构成文件的次序 (-m)
l 显示档案文件中每个文件的内容 (-p)
其他常用的选项:
l 显示操作过程的详细信息(老朋友 -v)
l 显示版本信息 (老朋友 -V)
l 创建符号表,对于生成静态库文件很有用,可以加快链接过程 (-s)
l 不生成符号表 (-S)
常用的就是这些吧,其他的可以到时候再:man ar
aspell
aspell检查文本中是否有错误的单词,这个命令对于写英文邮件,写英文报告的时候还是挺有用的,虽然GUI程序一般都继承了能够进行检查单词拼写的工具。
常用的选项:
l 指定操作:检查文件 (-c)
l 从标准输出上输出错误列表 (-l)
l 过滤一些特殊的单词 (filter)
bunzip2
bunzip2可以用来解压.bz2的压缩文件,最常用的方式就是
bunzip2 文件名.bz2
常用的选项:
l 解压后出现和当前目录同名的文件怎么处理?覆盖(-f),默认是不覆盖的
l 解压后是否保留原文件?保留(-k),默认不保留
l 是否需要减少程序执行时占用的内存?减少(-s),默认不减少
l 是否需输出详细的解压信息?输出(-v),默认不输出
l 解压后的文件的内容是否直接输出到标准输出?输出(-c),默认不输出
l -L 显示license信息
bye
没有参数,用于中断FTP会话并推出FTP程序
bzip2
bzip2和bunzip2其实是调用的同一个程序,因此很多参数都很类似,而且bzip2完全可以取代bunzip2.bzip2同时具备解压和压缩两种功能,通过选项来区分解压和压缩
l 是否要将压缩或者解压后文件的内容直接输出到标准输出上?是(-c),默认不输出,这和bunzip2的选项是兼容的
l 使用bzip2命令进行解压?是(-d)
l 解压后的文件是否覆盖已有的文件?是(-f),bunzip2兼容
l 当进行解压或者压缩时保留原文件?是(-k),bunzip2兼容
l 解压和压缩安静得进行?是(-q)
l 在执行压缩时是否需要减少内存的使用量?(-s),bunzip2兼容
l 只是测试压缩文件的完整性?是(-t)
l 运行时输出详细信息?是(-v),bunzip2兼容
l (-z)参数与(-d)配合表示强制压缩
l (-L)为输出license信息
l (-1)、(-2)、…、(-9)用于设置压缩时记忆块的大小,记忆块越大,压缩效果越好。(-1)表示1k,同理(-9)表示9k