【bat】批量修改文件名脚本

批量改名脚本
本文分享了一个用于批量修改文件夹名称的bat脚本,通过读取用户输入的前缀,自动为当前目录下所有文件夹添加该前缀,并详细记录了实现过程及遇到的常见问题。

有人托我写个批量修改文件名的脚本,之前没有写过bat,现学现卖,在此记录一下。

具体代码如下:

rem 关闭调试输出,开启延迟变量
@echo off&setlocal enabledelayedexpansion 
rem 读取输入的前缀
set/p a1=请输入想要添加的前缀:
rem 遍历当前目录下的所有文件夹
for /f "delims=" %%a in ('dir /b /a:d') do ( 
    set n=%%a
    rem 截取前面四个字符
    set n=!n:~0,4!
    echo 将%%a转成%a1%!n!
    rem 重命名文件夹,添加指定前缀    
    ren "%%a" "%a1%!n!"
)
pause

遇到的几个坑:

  1. 不要随便加空格。这点和其他语言不太一样,如写成set n = %%a,很可能出现意想不到的问题。
  2. for循环后面的括号里面算一句代码,所以循环体中定义的变量无法修改。开始写成set n=%n:~0,4%,发现始终没起作用。解决办法是开启(enabledelayedexpansion)并使用延迟变量(如!a!)。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值