【Linux】解压缩文件(一)
Linux中很多压缩程序只能针对一个文件进行压缩,要压缩一大堆文件时,先将这一大堆文件使用tar命令,再用压缩程序进行压缩。
- tar命令
tar本身不具有压缩功能,调用压缩功能用来压缩和解压文件。主操作模式: -A 追加tar文件至归档 -c 创建一个新归档 -d --diff --compare 找出归档和文件系统的差异 --delete 从归档中删除 -r 追加文件至归档结尾 -t --list 列出归档内容 --test-label 测试归档卷标并退出 -u 仅追加比归档中副本更新的文件 -x 从归档中解出文件
压缩选项: -a 使用归档后缀来决定压缩程序 -j 通过bzip2过滤归档 --lzma 通过lzma过滤归档 -z 通过gzip过滤归档 -Z 通过 compress 过滤归档 --lzop 通过lzop过滤归档
-f --file=ARCHIVE 使用归档文件或ARCHIVE设备
-v 详细地列出处理的文件
# tar -cvf passwd.tar passwd
仅打包,不压缩
# tar -czvf passwd.tar.gz passwd
打包后,以gzip压缩
# tar -cjvf passwd.tar.bz2 passwd
打包后,以bzip2压缩
# tar -tvf passwd.tar
使用–t选项可以不用释放其中的文件,就可以列出归档文件中的内容
# tar -tvf passwd.tar passwd
查看文件是否存在于tar文件中,文件不在tar中则报错
# tar -rvf passwd.tar passwd1
使用-r选项向已有的tar文件中追加文件
# tar -xvf passwd.tar
使用选项-x从tar文件中释放文件以及目录
# tar -xvf passwd.tar -C you/
从tar文件中释放文件以及目录到指定的目录 使用-C选项后边加上指定的文件的路径
# tar -xzvf you.tar.gz
使用-x和-z选项来解压.tar.gz或.tgz文件 在执行解压动作前自动检查文件的压缩类型,可以不用指定文件的压缩类型
# tar -xjvf etc.tar.bz2
使用-j和-x选项来解压.tar.bz2或.tbz2 文件
-xvf可以解压bzip2或者gzip压缩的文件
# tar -czvf you1.tar.gz you --exclude=*.conf
在tar命令中使用 –exclude 选项来排除指定文件或者类型
# tar -czvf you-$(date +%Y-%m-%d).tgz you
定时备份
# tar -czpvf you2.tar.gz you
打包压缩文件,并且保存其权限 -p 解压文件权限信息(默认只为超级用户服务)
- gzip命令
# gzip passwd
不保留原文件压缩
# gzip -c passwd > passwd.gz
保留原文件压缩
# gzip -v passwd
压缩时显示执行过程
# gzip *
将当前目录下每个文件压缩成.gz文件,不保留原文件
# gzip -d you.gz
解压.gz文件,不保留原文件
# gzip -d *.gz
解压当前目录下所有的.gz文件
# gzip -l *.gz
显示压缩文件信息
# gzip -rv you/
使用-r选项,递归压缩目录以及子目录下的所有文件,目录将被忽略
# gzip -d -rv you/
递归解压目录中文件
-a 使用ASCII文字模式 -d 解开压缩文件 -f 强行压缩文件 -h 帮助 -l 列出压缩文件的相关信息 -L 显示版本与版权信息 -n 压缩文件时,不保存原来的文件名称及时间戳 -N 压缩文件时,保存原来的文件名称及时间戳 -q 不显示警告信息 -r 递归处理,将指定目录下的所有文件及子目录一并处理 -t 测试压缩文件是否正确无误 -v 显示执行过程 -V 显示版本信息 -<压缩效率>:压缩效率是一个介于1~9的数值,预设值为“6”, 愈大的数值,压缩效率就会愈高 --best 效果和指定“-9”参数相同 --fast 效果和指定“-1”参数相同
- gunzip命令
gunzip是gzip的硬连接,解压缩都可通过gzip指令单独完成。
# gunzip passwd.gz
解压文件
# gunzip -l passwd.gz
详细显示压缩文件的信息
# gunzip -v passwd.gz
显示执行过程
# gunzip -v -S "ycw" passwd.ycw
指定后缀解压
# gunzip -c passwd.gz > passwd
解压,不删除原文件
# gunzip passwd.gz
# gzip -d passwd.gz
gunzip等价于gzip -d
- bzip2命令
# bzip2 passwd
不保留原文件压缩
# bzip2 -c passwd > passwd1.bz2
保留原文件压缩
# bzip2 -v passwd
压缩时显示指令执行过程
# bzip2 *
将当前目录下每个文件压缩成.bz2 文件
# bzip2 -d you.bz2
解压.bz2文件,不保留原文件
# bzip2 -d *.bz2
解压当前目录下所有的.gz文件
# bzip2 -dc passwd.bz2 > passwd
保留原文件解压
# bzip2 -k passwd
保留原文件压缩
-c 将压缩与解压缩的结果送到标准输出 -d 执行解压缩 -f 压缩或解压缩时,若输出文件与现有文件同名则覆盖 -h 帮助 -k 压缩或解压缩后,保留原始文件 -s 降低程序执行时内存的使用量 -t 测试.bz2压缩文件的完整性 -v 压缩或解压缩文件时,显示详细的信息 -z 强制执行压缩 -V 显示版本信息 --repetitive-best 若文件中有重复出现的资料时,此参数提高压缩效果 --repetitive-fast 若文件中有重复出现的资料时,此参数加快执行效果
- bunzip2命令
bunzip2是bzip2的符号链接(软链接)解压缩都可以通过bzip2实现
# bunzip2 passwd.bz2
解压文件
# bunzip2 -tv passwd.bz2
检测文件的完整性 -v 显示指令执行过程
# bunzip2 -k passwd.bz2
保留压缩文件解压
# bunzip2 -c passwd.bz2 > passwd
不删除原文件解压
# bunzip2 passwd.bz2
# bzip2 -d passwd.bz2
bunzip2等价于bzip2-d
-f 解压缩时,若输出的文件与现有文件同名时,不会覆盖现有的文件 -k 在解压缩后,保留压缩文件 -s 降低程序执行时,内存的使用量 -v 解压缩文件时,显示详细的信息