@echo off setlocal enabledelayedexpansion title 去除指定字符之前或之后的文件名 by:小可(xianghongai@gmail.com) @echo 需要提前调整截取范围,分割字符,过滤文件,调整文件前后名 rem tokens=有时表示提取全部。 rem tokens=m表示提取第m列。 rem tokens=m,n表示提取第m列和第n列。 rem tokens=m-n表示提取第m列至第n列。 rem tokens=*表示删除每行前面的空格。忽略行首的所有空格。 rem tokens=m*提取第m列以后的所有字符,星号表示剩余的字符。 rem tokens=m,*提取第m列以后的所有字符,星号表示剩余的字符。 rem delims指明点号、减号、空格为分割符,默认是空格和tab为分割符,delims==及delims=表示不要分割符 for /f "tokens=1-3 delims=.-" %%iin ('dir /b /a-d *.png') do (ren "%%i-%%j.%%k" "%%i.%%k") pause >nul exit