Board logo

标题: 该如何给这样的文件改名 [打印本页]

作者: laotou     时间: 2009-6-10 02:10    标题: 该如何给这样的文件改名

有这样的文件名:
ab00091_902111.bmp
xx00091_322322.xml
xss0092_dddddd.bmp
xxxxx92_fdddffff.xml
www93_dddssbf.bmp
sssfff93djjfffddd.xml

他们的共同点是 91,92,93

我想同时更改其名为
123a.bmp
123a.xml
123b.bmp
123b.xml
123c.bmp
123c.xml

请各位帮忙.
作者: ccwan     时间: 2009-6-10 03:03
一个取巧的方法。
CODE:  [Copy to clipboard]
@echo off
for /f "delims=" %%i in ('dir/b *.bmp *.xml^|sort /+8') do (for %%a in (a b c) do ren %%i 123%%a%%~xi)2>nul

作者: jmz573515     时间: 2009-6-10 03:35
CODE:  [Copy to clipboard]
@echo off
setlocal enabledelayedexpansion
set var=abc
for /f "delims=" %%i in ('dir /b *.bmp *.xml') do (
        for /l %%a in (91,1,93) do (
                set /a l=%%a-91
                echo %%i|find "%%a">nul && call :label "%%i" %%a !l! %%~xi
        )
)
pause
:label %1 %2 %3 %4
echo ren %1 "%2!var:~%3,1!%4"
goto :eof
方法太笨速度超慢~~
作者: tireless     时间: 2009-6-10 04:11
CODE:  [Copy to clipboard]
@echo off
for %%L in (91.a 92.b 93.c) do (
  for %%F in (*%%~nL*.bmp *%%~nL*.xml) do (
    set var=%%~xL
    call ren "%%F" "123%%var:~1%%%%~xF"
  )
)

作者: laotou     时间: 2009-6-10 20:14
谢谢各位!!!真没想到批处理竟然如此强大。




欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) Powered by Discuz! 2.5