zoukankan      html  css  js  c++  java
  • Tar专题

    下面的脚本根据当前的系统时间生成压缩文件名,并备份文件到指定目录:

    DIR=/www/webbackup/web/
    FILE_NAME=`date +%y%m%d%H`
    FILE_NAME=$DIR/oom_$FILE_NAME.tar.gz
    echo start backup to $FILE_NAME at `date`
    tar zcvf  $FILE_NAME  /www/outofmemory.cn
    
    DIR=/www/webbackup/ugc/
    FILE_NAME=`date +%y%m%d%H`
    FILE_NAME=$DIR/ugc_$FILE_NAME.tar.gz
    tar zcvf $FILE_NAME  /www/ugc
    
    echo finish backup at `date`

    http://outofmemory.cn/code-snippet/2189/tar-dabao-backup-directory-shell-script

    tar时报错:从成员名中删除开头的"/"
    解决办法:
    在bash script中先cd到需要使用tar命令压缩文件所在的目标,然后执行tar命令即可:

    #!/usr/bin/env bash
    
    DIR=/home/backup
    FILE_NAME=`date +%y%m%d%H`
    FILE_NAME=${DIR}/front_end_${FILE_NAME}.tar.gz
    echo start backup to ${FILE_NAME} at `date`
    cd /opt/project
    tar zcf  ${FILE_NAME} todoList/
    echo finish backup at `date`
    find /opt/backup/ -mtime +30 -type f
    find /opt/backup/ -mtime +30 -type f |xargs rm -f

    今天测试一个打包/var/log下log文件的脚本,但是在执行的时候报错:tar: 从成员名中删除开头的“/”,在反复检测脚本文件后确认没有什么错误,虽然报错,但还是成功进行打包了,如下图:
      

    后来通过查询资料,得知是由绝对路径搞的

    也可以在tar命令执行时使用参数P,但解压时也需要使用参数P,否则报错
    执行压缩的命令:

    tar czPf bak.tar.gz /opt/wx

    执行解压缩的命令:

    tar xzPf bak.tar.gz

    http://blog.51cto.com/firelong/1767457
    man tar:

           -P, --absolute-names
                  don't strip leading `/'s from file names

     

    今天尝试编译内核,下载到了一份tar.xz结尾的压缩文件,网上解决方法比较少,不过还是找到了,如下:

    $xz -d ***.tar.xz
    $tar -xvf ***.tar
    可以看到这个压缩包也是打包后再压缩,外面是xz压缩方式,里层是tar打包方式。
    补充:目前可以直接使用 tar xvJf ***.tar.xz来解压



  • 相关阅读:
    JZOJ 3034. 【NOIP2012模拟10.17】独立集
    JZOJ 3035. 【NOIP2012模拟10.17】铁轨
    JZOJ 1259. 牛棚安排
    数位DP JZOJ 3316. 非回文数字
    JZOJ 3046. 游戏
    JZOJ 3013. 填充棋盘
    debian 安装oracle提供的java8
    java 汉字转拼音 PinYin4j
    debian ssh设置root权限登陆 Permission denied, please try again
    java并发下订单生成策略
  • 原文地址:https://www.cnblogs.com/softidea/p/7999161.html
Copyright © 2011-2022 走看看