[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
回复 5# zhengzhenhui


  
  1. @echo off
  2. rem 批处理保存为ansi编码格式
  3. rem n大于等于2
  4. set n=3
  5. set f="关键字1" "关键字2" "关键字3"
  6. for /l %%l in (2,1,%n%) do (
  7. call set str=%%str%%\\.*
  8. )
  9. for /f "delims=" %%a in ('forfiles /s /c "cmd /c if @isdir==TRUE echo @relpath" ^|findstr /rc:"%str%" ^|findstr /rvc:"%str%\\.*" ') do (
  10. for %%x in (%f%) do (
  11. if exist "%%~a\%%~x*.*" (
  12. md "%%~a\%%~x"
  13. move "%%~a\%%~x*.*" "%%~a\%%~x\"
  14. )
  15. )
  16. )
  17. pause
复制代码
bat小白,请多指教!谢谢!

TOP

楼主是想一次处理多项,比如移动二层到三层 and 移动三层到四层  两项都处理,或者只处理一项,比如 移动二层到三层或者移动三层到四层 两项只处理一项

TOP

回复 5# zhengzhenhui
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%a in ('dir /b /a-d') do (
  4.     echo 2级文件夹:%%a
  5.     for /f "delims=" %%b in ('dir /b /a-d') do (
  6.         echo ---3级文件夹:%%b
  7.         for %%i in ("关键字1" "关键字2" "关键字3") do (
  8.             if exist "%%a\%%b\%%~i*.*" (
  9.                 md "%%a\%%b\%%~i"
  10.                 move "%%a\%%b\%%~i*.*" "%%a\%%b\%%~i\"
  11.             )
  12.         )
  13.     )
  14. )
复制代码
测试代码之前请做好备份

TOP

回复 2# 77七


    您好,如果文件是在下一级代码改如何写,比如文件在三级文件夹,移动到四级文件夹,,
或者是四级文件夹,移动到五级文件夹
您看能不能多发几个示例,感激不尽

TOP

回复 1# zhengzhenhui
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%d in ('dir /b /a-d') do (
  4.     for %%a in ("关键字1" "关键字2" "关键字3") do (
  5.         if exist "%%d\%%~a*.*" (
  6.             md "%%d\%%~a"
  7.             move "%%d\%%~a*.*" "%%d\%%~a\"
  8.         )
  9.     )
  10. )
复制代码
测试代码之前请做好备份

TOP

回复 2# 77七


    谢谢

TOP

  1. @echo off
  2. rem 批处理保存为ansi编码格式
  3. cd /d "%~dp0"
  4. set f="关键字1" "关键字2" "关键字3"
  5. for /d %%d in (*) do (
  6. for %%a in (%f%) do (
  7. if exist "%%d\%%~a*.*" (
  8. md "%%d\%%~a"
  9. move "%%d\%%~a*.*" "%%d\%%~a\"
  10. )
  11. )
  12. )
  13. pause
复制代码
1

评分人数

bat小白,请多指教!谢谢!

TOP

返回列表