怎样用批处理批量删除多个文件名中[ ] 这个这外的字符
发布网友
发布时间:2024-10-22 07:21
我来回答
共2个回答
热心网友
时间:2024-11-24 00:15
这个好办,手机码字,先说思路。
把这些文件夹集中到一个文件夹a下,批处理文件置于文件夹a下。
处理步骤:
dir >z.txt
for读出z.txt每一单行,文件夹名赋给%%i,从%%i中一一读出单个字符,遇到[前抛下,[之后的开始叠加,]之后的弃去。得到的字符串赋给aa
rename %%i aa即可
我回去了写一下完整代码,楼主可据此先自己试试。追问忘了说了.我是要改文件夹.谢谢
热心网友
时间:2024-11-24 00:16
也没说明下要将文件夹名字改成啥样,只好按自已理解的来写代码
将当前文件夹下含有[ ]文件夹名字重新命名为[ ]内数据
asd[dfd]sdff 则改为dfd
wewr[etgdd]fafgsf 则改为etgdd
批处理代码如下:
@echo off
pushd %~dp0
for /f "tokens=*" %%i in ('dir /ad/b *[*]*.') do (
set b=
echo "%%i"|findstr /b "[" >nul&&set b=1
if defined b (for /f "delims=[]" %%a in ("%%i") do ren "%%i" "%%a") else (for /f "tokens=2 delims=[]" %%a in ("%%i") do ren "%%i" "%%a")
)