今天在头条看到一个小姐姐整理疫苗接种凭证的人名整理到表格里,如果一个个敲真的很恐怖的工作量,看到底下好多评论有提供方向的,也有说能做的。但也没有提供明确方案的。
作为一名IT二把刀自然也遇到过类似的需求,解决方案的核心也很简单就是bat批处理文件。当时的需求比小姐姐要更加复杂一些,要把名称获取到后还需要对原有的名称进行修改。今天就整理一下,方便大家也方便自己ctrlcv.
首先,获取文件名称(也是上边案例的需求)
dir /s /n >1.xls
将上述代码复制到txt文件中,将扩展名修改为.bat,放到需要获取的文件夹中,执行,文件名就会存放到文件夹下 1.xls 文件中,如下图,我们可以看到文件名已经成功获取到了。
上述命令解释可以参考文末具体解释。
进一步的修改文件名
核心命令:
ren 原文件名 新文件名
在上面的表格里,我们获取到的文件名是在一个单元格里的,对其进行简单的EXCEL处理
1、删除没有用的信息
2、数据分列,这样获取的数据就在一列中了
3、删除没有用的数据列
4、在第二列处理成自己想要的文件名,然后通过公式组合要用的命令
="ren "&A1&" "&B1
5、将上述C列复制到txt文本中,将扩展名更改为.bat
6、执行大功告成
以上就是bat批量获取文件名并进行修改的操作流程,如有什么不清晰的地方可以反馈给我,请多指教。
命令解释
上述bat中利用到了dir命令,具体命令解释参考如下
dir命令:
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]sortorder]] [/P] [/Q] [/R] [/S] [/T[[:]timefield]] [/W] [/X] [/4]
[drive:][path][filename]
指定要列出的驱动器、目录和/或文件。
/A 显示具有指定属性的文件。
属性 D 目录 R 只读文件
H 隐藏文件 A 准备存档的文件
S 系统文件 I 无内容索引文件
L 解析点 - 表示“否”的前缀
/B 使用空格式(没有标题信息或摘要)。(对于文件来说,只显示文件名和扩展名,这一条比较实用!)
/C 在文件大小中显示千位数分隔符。这是默认值。用 /-C 来
禁用分隔符显示。
/D 跟宽式相同,但文件是按栏分类列出的。
/L 用小写。
/N 新的长列表格式,其中文件名在最右边。
/O 用分类顺序列出文件。
排列顺序 N 按名称(字母顺序) S 按大小(从小到大)
E 按扩展名(字母顺序) D 按日期/时间(从先到后)
G 组目录优先 - 反转顺序的前缀
/P 在每个信息屏幕后暂停。
/Q 显示文件所有者。
/R 显示文件的备用数据流。
/S 显示指定目录和所有子目录中的文件。
/T 控制显示或用来分类的时间字符域。
时间段 C 创建时间
A 上次访问时间
W 上次写入的时间
/W 用宽列表格式。
/X 显示为非 8.3 文件名产生的短名称。格式是 /N 的格式,
短名称插在长名称前面。如果没有短名称,在其位置则
显示空白。
/4 用四位数字显示年
转载请注明出处:
未经允许不得转载:lxfamn » bat批量修改文件名批量获取文件名