zoukankan      html  css  js  c++  java
  • Linux 批量修改文件名

        背景:在研究MP4解码播放的时候音视频字幕的分片命名不符合规范,分片个数太多只能脚本实现。

       解决问题类型

          1.将Garfield1HD_261_dan-*.m4s 统一转换为Garfield1HD_261_dan-*.webvtt的格式 

    #!/bin/bash
    
    parse_dir=/home/lcw/test
    
    cd $parse_dir
    
    #Garfield1HD_261_dan-8.m4s
    for var in `ls $parse_dir/*.m4s`; do
        src_name=`basename $var`
        dst_name=`echo $src_name | awk -F '.' '{print $1".""webvtt"}'`
       # echo "cp $src_name $dst_name"
        mv $src_name $dst_name
    done
         
    

      2. Garfield1HD_eng_128000_257_Segment-1402.m4a 去掉其中的segment  Garfield1HD_eng_128000_257-1402.m4a

    #!/bin/bash
    
    parse_dir=/home/yinzhou/dashstream/media_lcw/vodafone
    
    cd $parse_dir
    #Garfield1HD_261_dan_Segment-339.m4a
    #Garfield1HD_eng_128000_257_Segment-1402.m4a
    for var in `ls $parse_dir/Garfield1HD_*_*_*_Segment-*`; do
        src_name=`basename $var`
        dst_name=`echo $src_name | awk -F '_|-' '{print $1"_"$2"_"$3"_"$4"-"$6}'`
        #echo "cp $src_name $dst_name"
        mv $src_name $dst_name
    done
    

      3.将Garfield1HD_261_dan_Segment-339.m4a 其中的segment去掉 Garfield1HD_261_dan-339.m4a

    #!/bin/bash
    
    parse_dir=/home/yinzhou/dashstream/media_lcw/vodafone
    
    cd $parse_dir
    #Garfield1HD_261_dan_Segment-339.m4a
    #Garfield1HD_eng_128000_257_Segment-1402.m4a
    for var in `ls $parse_dir/Garfield1HD_*_*_Segment-*`; do
        src_name=`basename $var`
        dst_name=`echo $src_name | awk -F '_|-' '{print $1"_"$2"_"$3"_-"$5}'`
        #echo "cp $src_name $dst_name"
        mv $src_name $dst_name
    done
    

      

  • 相关阅读:
    3星|《中国古城墙》:重要的古城墙的资料汇集
    bindingSource具体使用案例
    WPF第三方控件盘点
    FluentValidation具体使用案例
    Visual Studio 版本管理从TFS迁移到SVN
    Image.FromStream与Image.FromFile使用区别
    判断图片的格式的方法
    WCF测试小程序
    使用AutoMapper 处理DTO数据对象的转换
    获取mac地址和IP地址方式
  • 原文地址:https://www.cnblogs.com/liuchuanwu/p/5892448.html
Copyright © 2011-2022 走看看