|
|
发表于 2010-9-21 20:23:09
|
显示全部楼层
回复 5楼 的帖子
提出来,放到外面。
2015-09-29 在QQ群里面看到有人提问,用这个思路解决了问题,特此记录。- @echo off
- setlocal enabledelayedexpansion
- set /p "zf= 输入字符(如 *.txt;a*.txt;???s.*):"
- set /p "lj= 设置你要备份的路径(如 c:\):"
- echo 正在全盘搜索......
- md "%lj%"
- for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
- echo 正在处理 %%a:\
- if exist %%a:\ (
- for /f "tokens=*" %%i in ('dir /a /b /s "%%a:\%zf%"') do (
- if exist "%lj%\%%~nxi" (
- call :GetNewName "%%~nxi"
- echo f | xcopy /h /y "%%i" "%lj%\!NewFile!"
- ) else (
- xcopy /h /y "%%i" "%lj%\"
- )
- )
- )
- )
- :GetNewName
- set "name=%~n1"
- set "ext=%~x1"
- set n=1
- :LoopName
- if exist "%lj%\%name%_!n!%ext%" (
- set /a n+=1
- goto :LoopName
- )
- set NewFile=%name%_!n!%ext%
复制代码 |
|