linux下压缩解压tar 详解

来源:互联网 发布:cruise是什么仿真软件 编辑:程序博客网 时间:2024/06/03 18:35
tar -c|x|u|r|t[z|j][v] -f <归档文件> [未打包文件]
将多个文件打包为一个归档文件,可以在打包的同时进行压缩。支持的格式为tar(归档)、gz(压缩)、
bz2(压缩率更高,比较耗时)
    -c 创建
    -x 解包
    -u 更新
    -r 添加
    -t 查看
    -d 比较压缩包内文件和文件
    -A 将tar文件添加到归档文件中
    -z 使用gz压缩格式
    -j 使用bz2压缩格式
    -v 显示过程
    -f <文件名> 归档文件的文件名
    -C <解压路径> 将压缩包中的文件解压到指定目录
[未打包文件] 创建、更新时必须填写
示例:
    tar -zcvf xxx.tar.gz xxx/ xxx1 xxx2 xxx3 多个待打包文件以空格分隔
    tar -zcvf xxx.tar.gz /home/user/xxx/ 使用绝对路径打包,解包也使用绝对路径
    tar -zxvf xxx.tar.gz 按相对路径解包到当前目录下,或按绝对路径解包
    tar -zcvf xxx.tar.gz xxx | split -b 1m 打包后,使用split分割为1m大小的多个文件
其它参数
    -P 使用绝对路径压缩时,保留根目录“/”
    -W 校验
    -p 还原文件权限
    -w 询问用户
    --totals 统计
    -T <表达式> 处理符合条件的文件
    -X <表达式> 排除符合条件的文件
zip [参数] <压缩包> <源文件>
使用zip格式打包文件
    -r 递归,将指定目录下的所有文件和子目录一并处理
    -S 包含系统和隐藏文件
    -y 直接保存符号连接,而非该连接所指向的文件
    -X 不保存额外的文件属性
    -m 将文件压缩并加入压缩文件后,删除源文件
    -<压缩级别> 1~9,数字越大,压缩率越高
    -F 尝试修复已损坏的压缩文件
    -T 检查备份文件内的每个文件是否正确无误
    -q 不显示指令执行过程
    -g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件
    -u 更新压缩包内文件
    -f 更新压缩包内文件。如果符合条件的文件没有包含在压缩包中,则压缩后添加
    -$ 保存第一个被压缩文件所在磁盘的卷标
    -j 只保存文件名称及其内容
    -D 压缩文件内不建立目录名称
    -i <表达式> 压缩目录时,只压缩符合条件的文件
    -x <表达式> 排除符合条件的文件
    -n <文件名后缀> 排除指定文件名后缀的文件
    -b <缓存路径> 指定临时文件目录
    -d <表达式> 从压缩文件内删除指定的文件
    -t <日期时间> 把压缩文件的日期设成指定的日期
    -o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同
    -A 调整可执行的自动解压缩文件
    -c 替每个被压缩的文件加上注释
    -z 替压缩文件加上注释 unzip [参数] <压缩文件> [压缩包中将被释放的文件]
解压zip压缩包文件
    -P <密码> zip压缩包的密码
    -d <路径> 指定解压路径
    -n 解压缩时不覆盖原有文件
    -f 覆盖原有文件
    -o 不经询问,直接覆盖原有文件
    -u 覆盖原有文件,并将压缩文件中的其他文件解压缩到目录中
    -l 显示压缩文件内所包含的文件
    -t 检查压缩文件是否正确
    -z 显示压缩包注释
    -Z unzip -Z等于执行zipinfo指令
    -j 不处理压缩文件中原有的目录路径
    -C 压缩文件中的文件名称区分大小写
    -L 将压缩文件中的全部文件名改为小写
    -s 将文件名中的空格转换下划线
    -X 解压缩时保留文件原来的UID/GID
    -q 执行时不显示任何信息
    -v 执行是时显示详细的信息
    -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换
    -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
    -a 对文本文件进行必要的字符转换
    -b 不要对文本文件进行字符转换
    -x <表达式> 处理里排除压缩包中的指定文件
    -M 将输出结果送到more程序处理
7z|7za <子命令> [参数] <压缩包> [文件]
子命令
    a 添加
    d 删除
    e 解压
    x 带路径解压
    l 列表查看
    t 测试
    u 更新
参数
    -m<压缩方式>
    -m0=<压缩算法> 默认使用lzma
    -mx=<1~9> 压缩级别
    -mfb=64 number of fast bytes for LZMA = 64
       -md=<字典大小> 设置字典大小,例如 -md=32m
    -ms=<on|off> 是否固实压缩
    -o<输出目录> 设置输出目录
    -p[密码] 使用密码
    -r[数字] 递归,使用数字定义递归子目录的深度
    -sfx[<模块名称>] 使用自解压模块
    -si 从标准输入设备读入数据
    -so 将数据写入标准输出设备
    -y 所有询问均回答Yes
    -w<工作目录>
rar <子命令> [参数] <压缩包> [文件|文件列表|路径]
子命令
    x 带路径解压
    e 解压到当前目录
    a 将文件添加到压缩包内
    d 从压缩包中删除文件
    u 更新压缩包内文件
    f 更新压缩包内文件,并添加压缩包内不存在的文件
    m 添加并删除源文件
    r 修复
    l 列表查看压缩包内文件信息 lt 更详细信息 lb 简短信息
    c 添加压缩包注释
    cf <文件名> 将文件内容添加为注释
    cw <文件名> 将注释保存为文件
    t 测试压缩包
    rr 添加恢复纪录
    rv 恢复到文件
参数
    -p<密码> 设置密码
    -m<0~5> 设置压缩级别,数字越大,压缩级别越高

    -k 使用MS-DOS兼容格式的文件名称。
    -l 压缩文件时,把LF字符置换成LF+CR字符。
    -ll 压缩文件时,把LF+CR字符置换成LF字符本文出自 51CTO.COM技术博客
原创粉丝点击