找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23348|回复: 2

[文件操作] 求批处理命令 实现处理后 每个文件夹里只保留20个随机文件 内详有实例 在线等跪谢了

[复制链接]
发表于 2015-10-21 19:15:26 | 显示全部楼层 |阅读模式
比如:有一堆文件夹 ABCDEFG等等,每个文件夹里都有jpg照片50个以上,如——
A文件夹里有jpg文件100个
B文件夹里有jpg文件200个
C文件夹里有jpg文件150个
D文件夹里有jpg文件80个  ……………………

批处理命令双击执行后,
A文件夹里原来的100个文件随机删除剩余20个
B文件夹里原来的200个文件随机删除剩余20个
C文件夹里原来的150个文件随机删除剩余20个
D文件夹里原来的80个文件随机删除剩余20个……………………

也就是批处理后每个文件夹里只保留随机的20个文件 这样的批处理命令该如何写? 跪求急需在线等
发表于 2015-10-21 20:46:59 | 显示全部楼层
  1. @echo off
  2. set a=20
  3. for /d %%a in (*) do (
  4.     pushd "%%a"
  5.     setlocal enabledelayedexpansion
  6.     for %%b in (*.jpg) do (
  7.         set /a n+=1
  8.         set #!random!_!n!=%%b
  9.     )
  10.     if !n! gtr %a% (
  11.         for /f "skip=%a% tokens=1* delims==" %%c in ('set #') do del "%%d"
  12.     )
  13.     endlocal
  14.     popd
  15. )
  16. pause
复制代码
 楼主| 发表于 2015-10-21 23:12:04 | 显示全部楼层
回复 2# pcl_test


    感谢大神啊!真心非常感激您。  另外 如果这个命令引申一步,实现批处理后保留包含每个文件夹内按名称排序的第一个jpg文件及其他随机jpg图片19个的话,这个命令该如何修改呢?
也就是说保留的20个随机jpg文件中,指定保留每个文件夹的按名称排序的第一个jpg。 真心求教!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:54 , Processed in 0.017909 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表