今天,在制作培训课程时,遇到了对视频和学习单批量规范命名的事情,一个一个修改太繁琐和费时,于是想到了编写一段VBS脚本代码批量处理。
1. 场景:
(1)原文件为规则化命名,如02_场景01_编辑XX.mp4
(2)只替换文件名的部分内容,如:基础操作(02)_场景01_编辑XX.mp4
2. 思考与编写
(1)打开 vbs 帮助查看文件(File)、文件夹(Folder)的操作方法
批量操作:需要找到指定目录(文件夹)下的所有文件,如何获得文件夹下文件?
如何获得单个文件,并得到其名字?
(2)重点查看文件(File)的方法
< 1 > File 对象:提供对文件的所有属性的访问。
Name 属性:File.Name
注意 在说明中提到,Name属性是可 设置 ,可 返回值的,不是单一的返回值。
在以前的阅读中,都被惯性理解给忽略了,可以直接设置文件名。
< 2 > Files 集合:文件夹中所有 File 对象的集合.
方法:获得 Files 集合 --> 使用 For Each...Next 语句枚举集合成员(File)
3. 代码
下面是示例代码:
假设引用,请替换 文件存放目录(路径)和新文件名取值方法。
文本代码:
'文件存放目录
strFolderName ="d:\改名测试"
'文件访问对象
Set fso =CreateObject("scripting.filesystemobject")
'文件夹对象
Set ObjFolder =fso.GetFolder(strFolderName)
'文件集合
Set ObjFiles = ObjFolder.Files
'浏览文件集合,修改文件名
For Each strFile1 In ObjFiles
strFileNameCur = strFile1.Name
strFileNameNew ="基础培训(02)" & Right(strFileNameCur, Len(strFileNameCur)-2)
strFile1.Name = strFileNameNew
next