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

回复 1# k员外
将下面bat代码放在“户口”文件夹下:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set /a k=0,m=0
  4. for /d %%a in (*) do (
  5. set /a k+=1
  6. set _!k!=%%a
  7. )
  8. for %%i in ("D:\扫描件\*.jpg") do (
  9. set /a m+=1
  10. set /a "n=(m-1)/2%%k+1"
  11. for %%j in (_!n!) do move "%%i" "!%%j!\"
  12. )
  13. pause
复制代码

TOP

回复 4# k员外
运行结果如何?图片都是数字编号吗?

TOP

是移动未达到要求,还是根本图片就没有移动?

TOP

我这测试没问题。再说一遍吧:把bat代码文件放在户口文件夹下,户口\test.bat;图片文件放在“D:\扫描件\”中。bat文件另存为ANSI编码。

TOP

回复 9# k员外
你举一个实际文件夹和文件的名称的例子,我抽空给你改一改代码。

TOP

回复 1# k员外
你要的和这个差不多吧,如果是,可根据自己的需求改一下就行了。
http://www.bathome.net/viewthrea ... &from=favorites

TOP

回复 1# k员外
将240个小文件夹(文件夹名称为1,2,3...240)复制到图片文件夹下(不要将户口文件夹一起复制过来),下面代码存为test.bat,也放在图片文件夹下运行:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%i in (1,1,480) do (
  3.      set /a "n=(%%i-1)/2+1"
  4.      move "%%i.jpg" "!n!\"
  5. )
  6. pause
复制代码

TOP

回复 14# k员外
实际上代码基本上写完。但是还要问一句,图片文件是按字母排序还是创建时间排序?注意,在批处理中,按字母排序和在windows中按“名称”排序还是有很大的区别的,是按先数字后字母的顺序排列。最好还是先说清楚,免得又白忙活。
测试图片:

TOP

回复 16# k员外
将图片文件夹images和代码都放在文件夹“新华点二期”下,运行代码。未经测试,测试文件在家中电脑里,有问题再说:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set m=0
  4. for /l %%a in (1,1,21) do (
  5. if not %%a==6 if not %%a==19 set n=%%a
  6. for /d %%b in (!n!-*) do set /a m+=1&set _!m!=%%b
  7. )
  8. set x=0
  9. for /f "delims=" %%c in ('dir /b /a-d /od images\*.jpg') do (
  10. set /a x+=1
  11. set /a "y=(x-1)/2+1"
  12. for %%d in (_!y!) do copy "images\%%c" "!%%d!\"
  13. )
  14. pause
复制代码

TOP

返回列表