|
本帖最后由 879792799 于 2018-12-5 20:10 编辑
如下代码我修改的! 实际使用中一直搞不定{含空格长文件名} 本人能力低微求高手帮忙修改下!
如下代码本意是拖动生成文件备份1 再拖动生成备份2。。。。实际使用中一直搞不定{含空格长文件名}
@echo &&setlocal enabledelayedexpansion
set file=%1
set fn="%~n1"
set fe="%~x1"
set bakDir=%CD%
if exist %bakDir%\%"fn"%%"fe"% (
call :copyFileExist
) else (
copy %"file"% %bakDir%\ /y
)
GOTO :EOF
:copyFileExist
set ext=1
:until_no_file
if exist %bakDir%\%fn%★★★★★BACK!ext!%fe% (
set /a ext+=1 >nul
goto :until_no_file
)
copy %file% %bakDir%\%fn%★★★★★BACK!ext!%fe%
GOTO :EOF
OLD------------------------------------------------------------------
诸位大大请教下
我想拖动文件到批处理上 在当前目录自动(请不要直接重命名原文件)复制此文件副本并且重命名源文件名添加BACK1
如果我再次拖动文件到批处理上 自动复制此文件并且重命名源文件名添加BACK2
如果我再再次拖动文件到批处理上 自动复制此文件并且重命名源文件名添加BACK3
.....
比如
我拖动1.WIM到批处理上 在同目录下生成 1.WIM的副本并且自动重命名为1-BACK1.WIM
我再次拖动1.WIM到批处理上 在同目录下生成 1.WIM的副本并且自动重命名为1-BACK2.WIM
我再再次拖动1.WIM到批处理上 在同目录下生成 1.WIM的副本并且自动重命名为1-BACK3.WIM
.......依次类推 只是备份不要覆盖以前的文件
补充1 7#遇到文件名中包含空格的文件 不起作用 求指点 |
|