批处理 文件夹特殊符号 %~dp0 无法获取路径求解决方法

cd/d"%~dp0"setmulu=%~dp0for/f"delims="%%ain('dir/b/a-d"%mulu%\*.*"')do(setbn=%%asetbn... cd /d "%~dp0"set mulu=%~dp0for /f "delims=" %%a in ('dir /b/a-d "%mulu%\*.*"') do ( set bn=%%a set bn=!bn:需要删除的字符=! ren "%mulu%\%%~nxa" "!bn!")

请教个问题当批处理所在目录有特殊符号 无法重命名怎么解决?
展开
 我来答
yyykkkyyyy
2014-01-18 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3305万
展开全部

本来是把一些set 命令后的部分加引号就行了,代码中有些多余部分顺便帮你去掉:

setlocal enabledelayedexpansion
cd /d "%~dp0"
for /f "delims=" %%a in ('dir /b/a-d') do (
  set "bn=%%a"
  set "bn=!bn:需要删除的字符=!"
  if not "%%a"=="!bn!" ren "%%a" "!bn!"
)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式