背景:在研究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

  

Linux 批量修改文件名的更多相关文章

  1. linux批量修改文件名的shell脚本

    linux中批量修改文件名的shell脚本代码,主要是使用了rename,结合shell,喜欢的朋友可以参考下 使用 rename 命令  ========================  NAME ...

  2. linux 批量修改文件名 文件名只保留部分,去掉部分

    问题:linux系统中文件名包含中文,导致页面访问不了文件.就是上条博客中的解决方法二遗留问题. 文件名中有以下格式:TC2_诺而达铜管(中山)有限公司.pdf ,要改为TC2.pdf,去掉中文部分 ...

  3. linux批量修改文件名

    源文件; [root@test_machine fuzj]# ls fuzj-1.txt  fuzj-2.txt  fuzj-3.txt  fuzj-4.txt  fuzj-5.txt  fuzj-6 ...

  4. Linux下find一次查找多个指定类型文件,指定文件或者排除某类文件,在 GREP 中匹配多个关键 批量修改文件名等

    http://blog.sina.com.cn/s/blog_62e7fe670101dg9d.html linux下二进制文件查找: strings 0000.ts | grep -o " ...

  5. Linux下批量修改文件名方法

    对于在Linux中修改文件名的方式一般我们会用mv命令进行修改,但是mv命令是无法处理大量文件修改名称. 但是在处理大量文件的时候该如何进行批量修改呢? 方法一:mv配合for循环方式进行修改 [ro ...

  6. Linux下批量修改文件名(rename)

    原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修 ...

  7. rename 批量修改文件名简单用法

    有的时候我们需要批量创建文件做测试,为了做区分,一般只要稍稍动动文件名即可,MV命令既可以移动文件,也是可以修改文件名的,但批量修改文件名MV做不到,此时,我们可以用rename命令批量修改是蛮不错的 ...

  8. shell脚本:批量修改文件名

    参考链接1:shell脚本:批量修改文件名(删除文件名中字符) 参考链接2:linux shell 字符串操作详解 (长度,读取,替换,截取,连接,对比,删除,位置 ) 参考链接3:每天一个linux ...

  9. rename 批量修改文件名

    1.rename的用法 rename与mv的区别就是mv只能对单个文件重命名,而rename可以批量修改文件名 linux中的rename有两种版本,一种是C语言版的,一种是Perl版的.早期的Lin ...

随机推荐

  1. discuz教程:discuz模板js与jQuery冲突的解决方案

    今天在做discuz模板的时候,用到jquery的时候和原来主题js冲突.这个主要是Discuz X使用了$(id)作为dom节点的获取方法,而$符号刚好与jQuery的默认符号相冲突. 以下是基于之 ...

  2. JS汉语转拼音脚本

    测试代码: var anhui = "安徽"; //获得全拼 pinyin.getFullChars(anhui); //获得首拼 pinyin.getCamelChars(anh ...

  3. maven创建子项目(适用于多模块管理项目)

    在eclipse或者myeclipse下构建maven项目,该项目由多个子模块组成. 1.创建一个父项目 NEW -->project-->maven-->maven Project ...

  4. python之实现基于paramiko和mysql数据库的堡垒机

    一.堡垒机结构 堡垒机执行流程: 管理员为用户在服务器上创建账号(将公钥放置服务器,或者使用用户名密码) 用户登陆堡垒机,输入堡垒机用户名密码,现实当前用户管理的服务器列表 用户选择服务器,并自动登陆 ...

  5. 《与小卡特一起学Python》Code1

    print "I love pizza!" print "pizza " * 20 print "yum " * 40 print &quo ...

  6. kegg-kass注释--转载

    在注释KEGG的时候,一直用到kaas,具体kaas是个什么东东,简单的总结一下吧.     KEGG是由日本人搞的一个代谢图,收录基因和基因组的数据库,数据库可以分为 3大部分,基因数据库, 化学分 ...

  7. TinyOS 中的 task

    task 的目的 做过界面的编程的同学可能会有这种经历,界面不响应,那,其实程序总是在后台运行,但是后台可能是个for循环,那么界面的点击等事件都不能执行. 在windows界面编程中利用了事件机制来 ...

  8. 正确使用ng-if和ng-show

    在使用bootstrap中,我们会经常用到按钮组,也就是btn-group,如果仔细观察的话,会发现一个按钮组的第一个和最后一个按钮分别是有圆角的,如下图: 但是中间的按钮是没有圆角的,这样显得比较美 ...

  9. position absolute 绝对定位 设置问题

     今天在做布局的时候,用到了绝对定位, 父级元素相对定位,子元素两个,一个元素正常文档流布局并且在前面,另一个元素绝对定位排在后面,但设置了好久,绝对定位的子元素都不会覆盖其上面的兄弟元素,最后,不知 ...

  10. no route to host

    防火墙没有关闭: systemctl stop firewalld