(一)需求描述
在上班摸鱼的我正准备打开手机刷会儿CSDN论坛,老板发给我一个压缩包并要求我给里面所有的文件的名称添加一个前缀”大项目_”。我本以为只有几个文件需要改,便没放在心上,反倒是心里暗暗吐槽老板“这么简单的任务动动手就搞定了,还要单独发给我来帮他弄,简直就是对打工人的压榨”。
想罢,我便把压缩包解压在了当前目录下,结果这进度条走了得有十几秒,我心里顿时有种不好的预感,然后打开目录一看,密密麻麻的各种类型的文件铺满了文件资源管理器,我敢说我这辈子也没在一个目录下看到过这么多文件,它们仿佛是老板的数千个替身,带着嘲讽的神情看着我。
我心中暗道“这能忍?”,兄弟们接下来且看我操作。
(二)解决思路
①在当前目录下,我创建了一个.txt文件,用文本编辑器打开并写上了以下代码:
:: 关闭bat脚本命令回显
@echo off
:: 记录用户输入
set /p prefix=Please input the prefix to add:
:: 遍历当前目录下所有文件
for %%i in (*) do (
if not "%%i"=="%~nx0" (
ren "%%i" "%prefix%%%i"
)
)
②随后Ctrl+S保存一下,关闭文本编辑器,F2重命名将.txt后缀改为.bat;
③双击该Bat文件运行,根据提示输入待添加的命名前缀;
④关闭DOS命令窗口,等待系统刷新或F5手动刷新。
(三)测试
为了避免咱的代码可能出现问题,真正投入使用前当然还是要进行测试的,万一有时候没有备份又不小心把原有的文件名覆盖了,就难搞了。测试情景如图1所示。
测试结果如图2所示。
(四)代码解说
“@echo off”关闭bat脚本的命令显示,将用户的输入存储在变量“prefix”中,然后遍历当前目录下的所有文件,排除与当前bat脚本同名的文件,其它文件统一添加命名前缀。
(五)注意事项
①当前版本代码所运行的操作系统为Windows10,其它版本的Windows系统未经测试,为避免造成不必要的损失,建议正式使用前先测试一下;
②当前版本代码只适用于修改其所在层级目录的文件,不迭代子目录,不作用于文件夹;
③与bat脚本同名的文件将不会被有效作用。
如果这篇文章对你有帮助,请给作者点个赞吧!