Board logo

标题: [文件操作] 批处理怎样复制文件到新文件,判断原文件名为新文件命名? [打印本页]

作者: nnszuo    时间: 2014-10-11 11:40     标题: 批处理怎样复制文件到新文件,判断原文件名为新文件命名?

把文件复制到新文件为新文件命名:
  1.如果原文件名包含数字活着和字母(如:a445.txt)则在原文件名基础上在前面加个编号和"-"(如:01-a445.txt)
  2.如果原文件名包含空格(如:a44 5.txt)则在原文件名基础上删除空格并在前面加个编号和"-"(如:01-a445.txt)
  3.如果原文件名包含复件和空格(如:复件 复件 复件 a44 5.txt)则在原文件名基础上删除复件空格并在前面加个编号和"-"(如:01-a445.txt)
  4.如果原文件名包含"(*)" (如2) a44 5.txt)则在原文件名基础上删除(*)并在前面加个编号和"-"(如:01-a445.txt)
  5.如果原文件名包含"-" (如:02-a44 5.txt)则在原文件名基础上删除-和-前的内容并在前面加个编号和"-"(如:01-a445.txt)
  6.如果原文件名只有特殊符号 (如:-.txt)则在原文件名基础上删除所有符号并在前面加个编号."-"和0000(如:01-0000.txt)
  
  编号规则为:01开始,如果有存在01的文件名(如:01-a445.txt)则命名为02(如:02-a445.txt)以此类推,如果存在01-99(如:01-a445.txt到99-a445.txt)则在01基础上再加个0(如:001-a445.txt)
  1. @echo off
  2. for /f "tokens=3 delims= " %%i in ('reg query "HKLM\SOFTWARE\Classes\*\shell\fuzhi" /v Path')  do goto xie
  3. goto an
  4. ::卸载
  5. :xie
  6. reg delete "HKLM\SOFTWARE\Classes\*\shell\fuzhi" /f
  7. del %windir%\fuzhi.bat
  8. exit
  9. ::安装
  10. :an
  11. reg add "HKLM\SOFTWARE\Classes\*\shell\fuzhi" /f /ve /t REG_SZ /d "复制"
  12. reg add "HKLM\SOFTWARE\Classes\*\shell\fuzhi\command" /f /ve /t REG_SZ /d "\"%windir%\fuzhi.bat\" \"%%1\""
  13. (for /f "delims=" %%a in ('more +16 %~s0') do (echo %%a))>%windir%\fuzhi.bat
  14. exit
  15. @echo off
  16. cd /d %~dp1
  17. copy %~nx1 %time:~3,2%%time:~6,2%%time:~9,2%%~nx1
  18. exit
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2