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
Linux 批量修改文件名的更多相关文章
- linux批量修改文件名的shell脚本
linux中批量修改文件名的shell脚本代码,主要是使用了rename,结合shell,喜欢的朋友可以参考下 使用 rename 命令 ======================== NAME ...
- linux 批量修改文件名 文件名只保留部分,去掉部分
问题:linux系统中文件名包含中文,导致页面访问不了文件.就是上条博客中的解决方法二遗留问题. 文件名中有以下格式:TC2_诺而达铜管(中山)有限公司.pdf ,要改为TC2.pdf,去掉中文部分 ...
- linux批量修改文件名
源文件; [root@test_machine fuzj]# ls fuzj-1.txt fuzj-2.txt fuzj-3.txt fuzj-4.txt fuzj-5.txt fuzj-6 ...
- Linux下find一次查找多个指定类型文件,指定文件或者排除某类文件,在 GREP 中匹配多个关键 批量修改文件名等
http://blog.sina.com.cn/s/blog_62e7fe670101dg9d.html linux下二进制文件查找: strings 0000.ts | grep -o " ...
- Linux下批量修改文件名方法
对于在Linux中修改文件名的方式一般我们会用mv命令进行修改,但是mv命令是无法处理大量文件修改名称. 但是在处理大量文件的时候该如何进行批量修改呢? 方法一:mv配合for循环方式进行修改 [ro ...
- Linux下批量修改文件名(rename)
原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修 ...
- rename 批量修改文件名简单用法
有的时候我们需要批量创建文件做测试,为了做区分,一般只要稍稍动动文件名即可,MV命令既可以移动文件,也是可以修改文件名的,但批量修改文件名MV做不到,此时,我们可以用rename命令批量修改是蛮不错的 ...
- shell脚本:批量修改文件名
参考链接1:shell脚本:批量修改文件名(删除文件名中字符) 参考链接2:linux shell 字符串操作详解 (长度,读取,替换,截取,连接,对比,删除,位置 ) 参考链接3:每天一个linux ...
- rename 批量修改文件名
1.rename的用法 rename与mv的区别就是mv只能对单个文件重命名,而rename可以批量修改文件名 linux中的rename有两种版本,一种是C语言版的,一种是Perl版的.早期的Lin ...
随机推荐
- 两个NetSuite之间历史交易数据迁移的具体方案
背景与展望: 比如:公司要上市往往会要求提供过去几年的营业数据和报表等信息, 而这些信息来源于正在一直运营使用的ERP和财务系统是最可靠与真实的. NetSuite实现的ERP和财务系统的完美结合,随 ...
- 伪共享和缓存行填充,从Java 6, Java 7 到Java 8
关于伪共享的文章已经很多了,对于多线程编程来说,特别是多线程处理列表和数组的时候,要非常注意伪共享的问题.否则不仅无法发挥多线程的优势,还可能比单线程性能还差.随着JAVA版本的更新,再各个版本上减少 ...
- 【转】T-SQL查询进阶—理解SQL Server中的锁
简介 在SQL Server中,每一个查询都会找到最短路径实现自己的目标.如果数据库只接受一个连接一次只执行一个查询.那么查询当然是要多快好省的完成工作.但对于大多数数据库来说是需要同时处理多个查 ...
- 新项目CRM(1)
<title>CRM登陆</title> <script type="text/javascript"> if (window.parent.w ...
- 扩展卡尔曼滤波(MRPT)
EKF relies on a linearisation of the evolution and observation functions which are good approximatio ...
- Python中的join()函数的用法
函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: join(): 连接字符串数组.将字符串.元组.列表中的元素以指定的字 ...
- Momentics创建Photon图形程序
Photon microGui是qnx原生的UI图形工具.Qnx下开发Photon 一般是使用phAB来创建,使用默认的Momentics IDE也可以创建Photon图形程序. 首先需要创建一个c/ ...
- SQL 个版本下载地址
备用: SQL Server 2016简体中文企业版 文件名:cn_sql_server_2016_enterprise_x64_dvd_8699450.iso 64位下载地址:ed2k://|fil ...
- K-means算法
K-means算法很简单,它属于无监督学习算法中的聚类算法中的一种方法吧,利用欧式距离进行聚合啦. 解决的问题如图所示哈:有一堆没有标签的训练样本,并且它们可以潜在地分为K类,我们怎么把它们划分呢? ...
- Selenium:元素等待的4种方法
1.使用Thread.sleep(),这是最笨的方法,但有时候也能用到而且很实用. 2.隐示等待,隐性等待是指当要查找元素,而这个元素没有马上出现时,告诉WebDriver查询Dom一定时间.默认值是 ...