[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
把文件另存为 csv格式
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "useback tokens=1-5 delims=," %%a in ("1.csv") do (
  4. set /a n+=1
  5. set m=%%b
  6. call :1 !n!
  7. md "%%a%%b%%c%%d%%e"
  8. for /l %%l in (%%b,1,!m!) do (
  9. set k=00%%l
  10. move "!k:~-3!.jpg" "%%a%%b%%c%%d%%e"
  11. )
  12. )
  13. pause & exit
  14. :1
  15. for /f "useback skip=%~1 tokens=1-5 delims=," %%a in ("1.csv") do (
  16. set /a m=%%b-1
  17. exit /b
  18. )
  19. exit /b
复制代码
bat小白,请多指教!谢谢!

TOP

回复 5# liaoguinan


这样改没错的,是不是遗漏了一处?一共有两处需要修改。
   路径如果有中文,批处理需要保存为ansi编码格式。
bat小白,请多指教!谢谢!

TOP

回复 9# liaoguinan


  
  1. @echo off
  2. if not exist "C:\Users\Administrator\Desktop\1.csv" (
  3. echo 找不到文件
  4. )
  5. pushd "C:\Users\Administrator\Desktop"
  6. dir /b /s /a-d 1.csv
  7. pause
复制代码
确定1.csv在desktop下吗
bat小白,请多指教!谢谢!

TOP

回复 11# liaoguinan


   10楼代码,试了吗,找得到文件吗?
bat小白,请多指教!谢谢!

TOP

本帖最后由 77七 于 2023-9-13 18:58 编辑

回复 14# liaoguinan


   
那就别修改csv文件了。
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "useback tokens=1-5 delims=," %%a in ("1.csv") do (
  4. set /a n+=1
  5. set m=999
  6. call :1 !n!
  7. md "%%a%%b%%c%%d%%e"
  8. for /l %%l in (%%b,1,!m!) do (
  9. set k=00%%l
  10. if exist "!k:~-3!.jpg" (
  11. move "!k:~-3!.jpg" "%%a%%b%%c%%d%%e"
  12. )
  13. )
  14. )
  15. pause & exit
  16. :1
  17. for /f "useback skip=%~1 tokens=1-5 delims=," %%a in ("1.csv") do (
  18. set /a m=%%b-1
  19. exit /b
  20. )
  21. exit /b
复制代码
1

评分人数

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

TOP

回复 13# liaoguinan


   估计你的桌面文件夹要求权限?比较特殊?会修改就自己再试试,隔着屏幕实在不知道咋回事了。比如管理员运行,或者先进入路径,或者用type 试下
bat小白,请多指教!谢谢!

TOP

满足14楼需要,也可以少写一个for循环。
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "useback tokens=1-4* delims=," %%a in (`type "1.csv" ^& echo 1^,1000`) do (
  4. if defined n (
  5. set /a m=%%b-1
  6. md "!f!"
  7. for /l %%l in (!n!,1,!m!) do (
  8. set k=00%%l
  9. if exist "!k:~-3!.jpg" (
  10. move "!k:~-3!.jpg" "!f!"
  11. )
  12. )
  13. )
  14. set n=%%b
  15. set f=%%a%%b%%c%%d%%e
  16. )
  17. pause & exit
复制代码
bat小白,请多指教!谢谢!

TOP

返回列表