把你原先的代码不改成IF,只改CALL,也可以,原因未知:- @echo off&color 0a&setlocal enabledelayedexpansion
- cls
- if "%~1"=="" (
- if not defined hzm (
- echo+请把要重命名的文件中任意一个文件拖到该窗口。
- echo+注:本程序不支持没有后缀名的文件。
- set "hzm="&set /p hzm=文件完整路径=
- if "!hzm!" == "" (endlocal&%~s0&exit)
- echo+!hzm!|findstr /i /v "[a-z]:">nul 2>nul&&(
- endlocal&%~s0&exit
- )||(
- for /f "delims=" %%i in ("!hzm!") do (set "hzm=%%~xi"&set "hzm=!hzm:~1!"&set "path=%%~dpi")
- )
- %~s0&exit
- )
- echo+你要重命名的文件为:
- echo+目录[%path%]下的所有[.%hzm%]文件。
- pause&set "hzm="&start /b /i %~s0&exit
- )
复制代码
|