携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第11天,点击查看活动详
- 打包:多个东西放在袋子里,即多个文件和目录合并为一个特殊文件
- 压缩:把袋子中的空间进行压缩,即将特殊文件进行压缩得到压缩包
# 打包
tar cvf xxx.tar 文件1 文件2 ...
- c create创建包文件
- v 显示打包过程
- f 指定包文件名称
tar cvf media.tar b.txt ./a/
# 压缩
gzip xxx.tar # 得到xxx.tar.gz文件,gzip压缩算法,常用
bzip2 xxx.tar # 得到xxx.tar.bz2文件,bzip2压缩算法
# 打包+压缩一步完成
tar cvzf xxx.tar.gz # 使用gzip进行压缩
- z 使用gzip进行压缩
tar cvjf xxx.tar.bz2 # 使用bzip2进行压缩
- j 使用bzip2进行压缩
建议在创建压缩文件时,压缩文件的名称加上当前时间,这样在使用时可以明确压缩文件是什么时候创建的,尤其是对于备份配置文件来讲,今天的配置和明天的可能会不同,因此压缩包命名加上时间很有必要。
tar cvzf `date "+%Y_%m_%d_%H_%M_%S"`_xxxtar.gz 文件...
- `命令`:反引号表示获取其中命令的执行结果
解包和解压
- 解压:一条命令可以直接进行解包和解压
- 解包+解压:也可以使用两条命令先解包再解压,但是何必呢??
# 解压,该命令可以自动识别是那种压缩算法,从而自动解压
tar xvf xxx.tar.gz -C
tar xvf xxx.tar.bz2
- x 解压
- v 显示解压细节
- f 指定压缩包
- -C 将压缩包解压至指定路径,不指定直接解压至当前路径
# 解包
gunzip
bunzip2
zip/unzip
- zip:打包并压缩
- unzip:解压缩
zip xxx.zip 文件...
unzip xxx.zip -d 指定解压路径
总结
通常情况下使用打包+压缩一步完成,使用tar cvzf和tar xvf命令的场景更多一些。