bat 批量更改文件名的批处理文件

最近下了不少动画,不过文件名都太长,一般都是 [字幕组][名称][集数][语言][分辨率][编码].后缀 这样的格式 我喜欢简单的名字,比如 01.rmvb 之类,可是手动改很麻烦,于是就写了这个 bat,希望对大家有帮助

2009-10-16:       * 修正了更改文件名部分       + 增加了几个取得名称的方法,在REM注释节

@echo off SetLocal EnableDelayedExpansion

REM 要查找的文件 set ext=*.rm,*.rmvb,*.avi,*.mkv,*.torrent

REM 新文件名在原文件名中的起始位置,从0开始 set pstart=23

REM 新文件名在原文件名中的长度 set length=2

REM 遍历文件,并截取编号作为新文件名 for %%a in (!ext!) do (

REM 文件名 set fn=%%~na

REM 后缀 set en=%%~xa

REM 取 pstart 位置之后的所有字符 !fn:~%pstart%!!en! REM 取文件名最后 length 长度字符 !fn:~-%length%!!en! REM 取文件名 pstart 开始的 length 长度字符 !fn:~%pstart%,%length%!!en!

REM 显示新文件名 echo !fn:~%pstart%,%length%!!en!

REM 修改文件名 rename "%%a" "!fn:~%pstart%,%length%!!en!" )

pause

新建个 bat,将以上代码复制至其中即可运行,参数可适当修改

bat 批量更改文件名的批处理文件的更多相关文章

  1. bat 批量更改文件名

    通过如下批处理命令可实现批量更改文件名: @echo set DIR="%cd%" echo DIR=%DIR% set /p ext=文件类型: set /p find=要替换内 ...

  2. Linux shell利用sed如何批量更改文件名详解[转载]

     需求背景: 目录A用来存放自动化的包生成的apk文件,现在开发修改了包名的 命名规则:环境名称(pro|uat)-release-日期-v版本号.apk 原来的是思路是通过正则表达式匹配新的包名,但 ...

  3. 用EXCEL批量更改文件名,一个命令就能完成

    工作任务:学籍库里需要更新和完善学生信息,其中有一项工作就是要导入以身份证号为文件名的学生照片,而目前各个班级提交的学生照片是以学生姓名命名的.如何将学生姓名批量转换成身份证号码呢? 解决方案:用EX ...

  4. 用Objective-C写了一个简单的批量更改文件名的程序

    前言:因为本人要高仿一个app,从app中解压asserts得到的所有图片文件,文件名都带有~iPhone这个干扰的名字,为了去除这个~iPhone这个字符串,所以本人写了个简答的批量更改所有文件名的 ...

  5. Python批量更改文件名

    一.问题在处理文件或者一些其他信息的时候我们需要更改文件名,那么我们可以写一个程序来修改这些文件名,以减少我们重复的做一件事. 二.解决本次使用的Python,利用的是Python中的OS模块,具体操 ...

  6. python 批量更改文件名

    工作中遇到一种情况,就是市场部那边经常发过来一些apk的包 但是要求更改名字,文件太多了,没办法,只有想办法了,还好命名都是有规则的 比如说 YZLoan-gdtyyb-V2.23.apk------ ...

  7. windows环境批量更改文件名

    1.打开命令提示符,进入需更新文件所在的目录下(不熟悉的参考:https://blog.csdn.net/u012995964/article/details/53119516)2.批量命名      ...

  8. Linux shell用sed批量更改文件名的相关内容

    示例 去除特定字符 目标:将指定目录下文件名中sprint替换为dev 方法: [root@Skip-ftp test]# for i in `ls` > do > name=`echo ...

  9. java 19 -15 File类批量更改文件名的方法

    /* 需求: * 把H:\三国演义下面的视频名称修改为 00?_介绍.avi 思路: A:封装目录 B:获取该目录下所有的文件的File数组 C:遍历该File数组,得到每一个File对象 D:拼接一 ...

随机推荐

  1. mySQL 教程 第8章 视图

    创建视图的目的 简单 隐藏数据复杂性 安全 可以对视图授权 数据独立 可以屏蔽表结构变化对用户的影响,比如增加列,更改列名 创建视图 1. 创建单表视图 以下视图显示JAVA班的学生姓名.身份证号和班 ...

  2. js实现动态球形标签云

    HTML 原文演示地址:http://www.17sucai.com/pins/demoshow/8108 <!DOCTYPE html PUBLIC "-//W3C//DTD XHT ...

  3. SSH pts 虚拟终端

    昨天晚上小试了一下SSH,学到了一些乱七八糟的命令,知道了一种古老装逼的聊天方式:write.期间下定决心终于弄明白了pts/0之类的东西到底是什么东西. 先说pts/0吧,man里面是这样说的:pt ...

  4. java 中getDeclaredFields() 与getFields() 的区别

    java 中getDeclaredFields() 与getFields() 的区别 getDeclaredFields()返回Class中所有的字段,包括私有字段.例证: package com.t ...

  5. wkhtmltopdf+itext实现html生成pdf文件的打印下载(适用于linux及windows)

    目中遇到个根据html转Java的功能,在java中我们itext可以快速的实现pdf打印下载的功能,在itext中我们一般有以下三中方式实现 配置pdf模板,通过Adobe Acrobat 来设置域 ...

  6. javascript创建对象之构造函数模式(二)

    对上一章节的工厂模式进行代码重写 function Human(name, sex) { this.name = name; this.sex = sex; this.say = function ( ...

  7. 第3章 文件I/O(7)_高级文件操作:存储映射

    8. 高级文件操作:存储映射 (1)概念: 存储映射是一个磁盘文件与存储空间的一个缓存相映射,对缓存数据的读写就相应的完成了文件的读写. (2)mmap和munmap函数 头文件 #include&l ...

  8. unity3d的碰撞检测及trigger

    A.基本概念 要产生碰撞必须为游戏对象添加刚体(Rigidbody)和碰撞器,刚体可以让物体在物理影响下运动.碰撞体是物理组件的一类,它要与刚体一起添加到游戏对象上才能触发碰撞.如果两个刚体相互撞在一 ...

  9. docker容器修改时区(java应用log信息与标准容器时间有八个小时时间差)

    在docker容器中运行的java应用打出的日志时间和通过date -R方式获取的容器标准时间有八个小时时间差- 因为docker容器的原生时区为0时区,为了和国内时区保持一致,需要把容器时区调为东八 ...

  10. IO模式调查利器blkiomon介绍

    本文链接地址: IO模式调查利器blkiomon介绍 blkiomon 是blktrace工具包带的一个方便用户了解IO情况的工具, 由于blktrace太专业,需要了解的IO协议栈的东西太多,blk ...