zoukankan      html  css  js  c++  java
  • linux tar指定文件到指定目录

    项目需求:从远处拷贝压缩文件到本地后并解压,解压后的部分文件拷贝并重命名到其他目录

    需求拆分:1.拷贝文件 2.解压文件 3.批量重命名

    步骤一查看:http://www.cnblogs.com/ddddemo/p/5670534.html

    步骤三查看:http://www.cnblogs.com/ddddemo/p/5729099.html

    现在需要实现步骤二,解压文件。

    第一种方案tar zxvf $dir/XXX.tgz -C $targetDir/

    这种会直接将文件解压到$targetDir目录下,因为要把XXX.tgz目录下的所有文件都解压,所以耗时最长

    第二种方案,如果需要的部分文件含有一定的规律,可以使用* 或? 代表共同部分进行解压 或者 指出要解压的文件一一列出

    tar zxvf $dir/XXX.tgz   AABBCCDD*EEFF  -C $targetDir/

    其中 AABBCCDD*EEFF为指定要解压的文件,举例具体说明:

    我有文件life_20160801_log.tgz

    需要解压到dir=/data/ddddemo/log/ 目录下

    其中tgz的完全解压后的目录结构如下:

    life_20160801_log

      |--am

        |--relax_20160801_0001.log

        |--relax_20160801_0101.log

        |--relax_20160801_0201.log

        |--relax_20160801_0301.log

        |--relax_20160801_0401.log

        |--relax_20160801_0501.log

        |--relax_20160801_0601.log

        |--relax_20160801_0701.log

        |--work_20160801_0801.log

        |--work_20160801_0901.log

        |--work_20160801_1001.log

        |--work_20160801_1101.log

        |--work_20160801_1201.log

      |--pm

        |--work_20160801_1301.log

        |--work_20160801_1401.log

        |--work_20160801_1501.log

        |--work_20160801_1601.log

        |--work_20160801_1701.log

    我们需要获取到 am下的work*日志

    那么我们有两种实现方法

     1.

    tar -C $targetDir/ -zxvf $dir/life_20160801_log.tgz  life_20160801_log/am/work_20160801_*

     2.

    tar -C $targetDir/ -zxvf $dir/life_20160801_log.tgz  life_20160801_log/am/work_20160801_0801.log life_20160801_log/am/work_20160801_0901.log life_20160801_log/am/work_20160801_1001.log life_20160801_log/am/work_20160801_1101.log life_20160801_log/am/work_20160801_1201.log

    相对来说,方法2稍微快一点 如果对时间效率要求不是非常高,可以使用第一种,代码简洁一些

  • 相关阅读:
    【PyQt5-Qt Designer】对话框系列
    【PyQt5-Qt Designer】界面布局
    【PyQt5-Qt Designer】PyQt5+eric6 安装和配置
    【PyQt5-Qt Designer】QMessageBox 弹出框总结
    【PyQt5-Qt Designer】鼠标+键盘事件
    【PyQt5-Qt Designer】猜数字(小项目)
    【PyQt5-Qt Designer】浅谈关闭窗口
    【PyQt5-Qt Designer】窗口操作
    【python基础】利用pandas处理Excel数据
    【python基础】os.path模块常用方法详解
  • 原文地址:https://www.cnblogs.com/ddddemo/p/5731736.html
Copyright © 2011-2022 走看看