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

[文件管理] 批处理按文件名称自动分类

按文件名称自动分类代码1
  1. @echo off
  2. title 文件分类@fmr520 2008/4/20
  3. mode con cols=45 lines=15
  4. color 2f
  5. call :shuoming
  6. set "mulu=:"
  7. set "houzhui=:"
  8. cls
  9. setlocal EnableDelayedExpansion  
  10. :ml_
  11. cls
  12. echo\&echo. 文件夹格式是 d:\abc\mp3
  13. echo\&echo. 必须带有 \ 否则输入无效
  14. echo\&echo. ( .\ 表示当前文件夹 )
  15. echo\&echo.
  16. set /p mulu=将要操作的文件夹放到这里:
  17. set mulu=%mulu:"=%
  18. if "%mulu%" == ":" goto ml_
  19. if "%mulu%" == ".\" goto hz_
  20. if not "%mulu:~2,1%" == "\" call :cuo "%mulu%"
  21. :hz_
  22. cls
  23. echo\&echo.程序运行中...
  24. ping 127.1 -n 1 >nul
  25. for /f "tokens=*" %%a in (list.ini) do (set vaa=%%a
  26. pushd "%mulu%"
  27. for /f "tokens=*" %%i in ('dir/b ^|findstr /i "!vaa!" ') do (
  28.    if not exist !vaa! md !vaa!
  29.            move "%%i" !vaa!
  30.           )
  31. )
  32. cls
  33. echo\echo. 完成!
  34. pause>nul&exit
  35. :cuo
  36. echo\&echo. 你输入的 %1 无效!
  37. pause>nul
  38. if %1 == "%houzhui%" goto hz_
  39. if %1 == "%mulu%" goto ml_
  40. goto ml_
  41. :shuoming
  42. echo 把你要分类的文件名写进list.ini这个文件里,一行只能写一个文件名,否则会出错。 >>说明.txt
  43. start 说明.txt
  44. ping 127.1 -n 2 >nul
  45. del 说明.txt /q/f/a
  46. goto :eof
复制代码
按文件名称自动分类代码2
  1. @echo off
  2. title 文件分类@fmr520 2008/4/19
  3. mode con cols=45 lines=15
  4. color 2f
  5. set "mulu=:"
  6. set "houzhui=:"
  7. cls
  8. setlocal EnableDelayedExpansion  
  9. :ml_
  10. cls
  11. echo\&echo. 文件夹格式是 d:\abc\mp3
  12. echo\&echo. 必须带有 \ 否则输入无效
  13. echo\&echo. ( .\ 表示当前文件夹 )
  14. echo\&echo.
  15. set /p mulu=将要操作的文件夹放到这里:
  16. set mulu=%mulu:"=%
  17. if "%mulu%" == ":" goto ml_
  18. if "%mulu%" == ".\" goto hz_
  19. if not "%mulu:~2,1%" == "\" call :cuo "%mulu%"
  20. :hz_
  21. cls
  22. echo\&echo.输入要分类的后缀名,如 *.mp3 *.swf *.txt 或 *
  23. echo\&echo.可以同时输入多个后缀如 *.mp3 *.swf *.txt
  24. echo\&echo.输入 * 会对该目录下的全部文件分类
  25. echo\&echo.
  26. set /p houzhui=输入要分类的后缀名:
  27. if "%houzhui%" == ":" goto hz_
  28. if not "%houzhui:~0,1%" == "*" call :cuo "%houzhui%"
  29. cls
  30. echo\&echo. 程序正在运行中...
  31. ping 172.1 /n 1  >nul
  32. pushd "%mulu%"
  33. for /f "tokens=1* delims=-,.; " %%a in ('dir/b %houzhui%')  do (
  34.     set var=%%~na
  35.        if not exist !var! md !var!
  36.     move "%%a?%%b" !var!
  37.   )>nul 2>nul
  38. cls
  39. echo\echo. 完成!
  40. pause>nul&exit
  41. :cuo
  42. echo\&echo. 你输入的 %1 无效!
  43. pause>nul
  44. if %1 == "%houzhui%" goto hz_
  45. if %1 == "%mulu%" goto ml_
  46. goto ml_
复制代码
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
1

评分人数

    • youxi01: 呵呵,加油,可以借鉴其它同类作品PB + 4
@set,=学无止境
@for /l %%b in (0,1,6) do @call set/p= %%,:~%%b,1%%<nul

收藏了,再学习一下,多了解嘛

TOP

还是这儿好!找到我最想要的!

TOP

学习了,有没有更简单一点的代码!

TOP

回复 4# 狂人一个


    根据自己的实际需求写出来的代码最简单

TOP

返回列表