20181008 zip压缩工具、tar打包、打包并压缩

狂风中的少年 提交于 2019-11-26 10:35:56

zip压缩工具

  • 支持压缩目录
  • 压缩后不删除源文件/目录
  • 安装: yum install -y zip
[root@centos01 d6]# zip 1.txt.zip 1.txt # 压缩1.txt为1.txt.zip
  adding: 1.txt (deflated 73%)

[root@centos01 d6]# zip -r test_dir.zip 1.txt test_dir/  # 压缩目录test_dir、文件1.txt到test_dir.zip
  adding: 1.txt (deflated 73%)
  adding: test_dir/ (stored 0%)
  adding: test_dir/1.cp2.txt (deflated 73%)
  adding: test_dir/1.txt (deflated 73%)
  adding: test_dir/test.txt (stored 0%)
[root@centos01 d6]# du -sh test_dir.zip
1.1M    test_dir.zip

unzip解压缩

  • 安装: yum install -y unzip
[root@centos01 tmp]# unzip d6/test_dir.zip -d test_dir_cp 
# 把d6/test_dir.zip解压到目录test_dir_cp
Archive:  d6/test_dir.zip
  inflating: test_dir_cp/1.txt
   creating: test_dir_cp/test_dir/
  inflating: test_dir_cp/test_dir/1.cp2.txt
  inflating: test_dir_cp/test_dir/1.txt
 extracting: test_dir_cp/test_dir/test.txt

[root@centos01 tmp]# unzip -l d6/test_dir.zip  # 查看zip压缩包中的文件列表
Archive:  d6/test_dir.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
  1361328  09-30-2018 07:38   1.txt
        0  10-02-2018 23:07   test_dir/
  1361328  10-02-2018 22:57   test_dir/1.cp2.txt
  1361328  10-02-2018 22:57   test_dir/1.txt
        0  10-02-2018 23:07   test_dir/test.txt
---------                     -------
  4083984                     5 files

tar 打包工具

[root@centos01 d6]# tar -cvf test_dir.tar test_dir # 将目录test_dir打包为test_dir.tar
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
[root@centos01 d6]# tar -cf test_dir.tar test_dir # 打包过程不可视化

[root@centos01 d6]# tar -xvf test_dir.tar  # 解包,覆盖时不会提示
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt

[root@centos01 d6]# tar -cvf test_dir.tar test_dir 2.cp.txt 1.txt #t同时打包目录与文件
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
2.cp.txt
1.txt

[root@centos01 d6]# tar -tf test_dir.tar  # 列出包的内容
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
2.cp.txt
1.txt

[root@centos01 d6]# tar -cvf test_dir.tar test_dir --exclude 1.txt  
# 打包时要过滤的目录或文件
test_dir/
test_dir/1.cp2.txt
test_dir/test.txt
[root@centos01 d6]# ls test_dir
1.cp2.txt  1.txt  test.txt

[root@centos01 d6]# tar -cvf test_dir.tar test_dir --exclude "test.*" 
# 过滤名字是test.开头的文件或目录
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt

打包并压缩

  • tar -zcvf # 打包时支持gzip压缩
  • tar -jcvf # 打包时支持bz2压缩
  • tar -Jcvf # 打包时支持xz压缩
[root@centos01 d6]# tar -zcvf test_dir.tar.gz test_dir 1.txt
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
1.txt
[root@centos01 d6]# tar -jcvf test_dir.tar.bz2 test_dir 1.txt
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
1.txt
[root@centos01 d6]# tar -Jcvf test_dir.tar.xz test_dir 1.txt
test_dir/
test_dir/1.cp2.txt
test_dir/1.txt
test_dir/test.txt
1.txt
[root@centos01 d6]# du -sh test_dir.tar.*
384K    test_dir.tar.bz2
1.1M    test_dir.tar.gz
56K     test_dir.tar.xz
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!