• 记一起小意外事件引起的批量重命名文件名


    一、事件描述

      某次,因某业务系统迁移,一线人员对业务目录误操作,执行打包命令过程中导致Tomcat下的web应用程序无法使用,检查后发现项目下所有文件名都加了gz格式;询问一线,发现是对项目目录执行了:gzip -r ./tomcat导致程序文件找不到;报错如下:

    在这里插入图片描述

    二、事件处理


    1、查看相关文件,所有文件都追加了*.gz的格式,导致了服务文件和依赖调用过程中无法找到,故服务不可用;

    2、查看相关文件,这些文件依然是可通过vim和cat、less等查看命令正常读取的;即验证了本次问题只是因为对项目所有文件进行了压缩操作,文件名全部变成了压缩文件;

    3、通过gzip命令, 只会压缩,不能打包目标文件,且因为只能压缩单个文件,以".gz"为扩展名且压缩后的文件可以自动解压缩(即可正常查看读写),但不能处理目录。故对项目内目录并无影响,但注意的是,gzip压缩完目标文件,默认不加参数会删除原文件来生成gz后缀的新文件,如需保留源文件需加-c参数;使用-k参数会对源文件压缩,还会生成对应gz后缀的压缩文件;现场人员使用了-r参数,即它会递归地压缩目标目录下的所有文件,并在每个文件的原始文件名后面添加".gz"扩展名。解压缩使用如下命令:

    #解压:或使用:gunzip -r 目录
    gzip -dv filename.gz    //将解压缩名为filename.gz的压缩文件,生成一个名为filename的解压缩文件,并显示解压过程,之后压缩包会被自动删除
    #验证,显示压缩文件信息
    gzip -l filename.gz   //
    
    gzip -c -d filename.gz > filename   //将解压缩名为filename.gz的压缩文件,并生成一个名为filename的解压缩文件,但保留原始压缩文件。
    #查看压缩文件
    
    #使用指定的压缩级别进行压缩࿰
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 相关阅读:
    edgexfoundry device-sdk-c编译过程记录
    青柠起始页样式书写+清新风格登录界面——Html+Css+JavaScript
    如何使用Cygwin编译最新版的Redis源码,生成适用于Windows的Redis
    动态内存管理(上)
    经典Oracle表。包括联接查询示例。
    geoserver2.18(7):集成WPS服务,并在前端进行开发调用
    Jmeter书中不会教你的(99)——java request实例
    序列化方案对比
    Flink1.16 发布新特性
    Python项目:基于COVID-19做出的居民饮食结构调整方案
  • 原文地址:https://blog.csdn.net/ximenjianxue/article/details/132780987