Linux之tar命令用法总结

前几天,在重构了项目中的一段代码以后,公司章哥给我示范如何把个人代码放到nginx上测试。他问我会不会使用 tar命令,我说据说过,不过没用过。后来周末我就google了几篇文章,在这里简单总结一下tar命令在实际开发中经常使用的一些用法,但愿对读者也有所帮助。

经常使用选项

  • -c: 建立archive
  • -z: 用gzip压缩archive
  • -j: 用bzip2压缩archive
  • -v: 开启verbose模式
  • -f: 指明archive文件名
  • -x: 解压/提取archive
  • -t: 查看archive文件内容
  • -r: 添加新文件(夹)/修改后的文件(夹)到archive

代码示例

图片描述

  • 打包

    • 打包单个文件css

      tar cvf archive.tar file
    • 打包多个文件html

      tar cvf archive.tar file1 file2
    • 打包全部文件linux

      tar cvf archive.tar *
    • 打包单个文件夹nginx

      tar cvf archive.tar directory
    • 打包多个文件夹测试

      tar cvf archive.tar directory1 directory2
    • 打包全部文件,不包含某一文件google

      tar cvf archive.tar --exclude 'log.txt' *
    • 打包全部文件,不包含某些文件spa

      tar cvf archive.tar --exclude '*.txt' *
      tar cvf archive.tar --exclude 'log.txt' --exclude '*.css' *
    • 打包全部文件,不包含某一文件夹code

      tar cvf archive.tar --exclude 'directory' *
    • 打包全部文件,不包含某些文件夹htm

      tar cvf archive.tar --exclude 'directory1' --exclude 'directory2' *
  • 解包

    • 解包到当前文件夹图片

      tar xvf archive.tar
    • 解包到指定文件夹

      tar xvf archive.tar -C directory
  • gzip压缩

    tar zcvf archive.tar.gz 
    tar zcvf archive.tgz
  • gzip解压缩

    tar xvf archive.tar.gz
    tar xvf archive.tgz
  • bzip2压缩

    tar jcvf archive.tar.bz2 
    tar jcvf archive.tbz
  • bzip2解压缩

    tar xvf archive.tar.bz2
    tar xvf archive.tbz
  • 查看archive内容

    tar tvf archive.tar
    tar tvf archive.tar.gz
    tar tvf archive.tgz
    tar tvf archive.tar.bz2
    tar tvf archive.tbz
  • 添加新文件(夹)/修改后的文件(夹)到archive

    注意:不能添加到压缩后的archive(gzip,bzip2等)
    tar rvf archive.tar newFile.txt
    tar rvf archive.tar newDirectory
    tar rvf archive.tar newFile newDirectory

参考文档

  1. 18 Tar Command Examples in Linux
  2. The tar Command
  3. How to Compress and Extract Files Using the tar Command on Linux
  4. GNU Tar
相关文章
相关标签/搜索