最近朋友一直抱怨说有一堆的文件夹需要重新修改名称,一个一个处理非常浪费时间,问有没有什么简洁的方法进行处理。
在明白了朋友的需求后,想到可以写个bat批处理文件进行处理。
首先分析下朋友的需求:
原文件夹名称及结构:D:\
----test01
----test02_XXXX_XXXX
----test03_XXXX_XXXX
需要将test01文件夹下的test02下划线后的内容去掉,并将文件夹test02下的test03文件夹下划线后面的内容去掉。
修改为:
----test01
----test02
----test03
明白需求后,发现可以通过获取文件夹的名称,并通过下划线区切文件夹名,并利用bat批处理命令的“ren”进行改名。
处理代码如下:
@echo off&setlocal enabledelayedexpansion
::获取当前路径的文件夹名
for /f %%p in ('dir /ad/b') do (
set p1=
set p2=--
::输出当前文件夹名称
echo %%p
cd %%p
::获取当前文件夹下的子文件夹名
for /f %%a in ('dir /ad/b') do (
set pathname=%%a
::通过"_"区切出当前文件夹名的第一个名称
for /f &#