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

[文件操作] 批处理怎样把文件按位置奇偶性放在不同文件夹里?

[复制链接]
发表于 2024-1-15 09:45:28 | 显示全部楼层 |阅读模式
链接:https://pan.baidu.com/s/1gdghf7foDLhcV5dQvNcCDg?pwd=0v1y
提取码:0v1y

我从视频上截图了一些图片,规定 奇数 图为试题 偶数 图为答案
想用批处理一键分离图片  把当前目录下 奇数图放在 【试卷】文件夹里   偶数图放在 【答案】文件夹里

这里所说的奇数图与偶数图 指的是当前系统默认排序状态下图片的位置 --最好是这种方案

如果不能实现,
我可以给所有图片前加上自然数序号,以区图片的奇偶。
编号规则,如果图片总是2位数,则序号为01_ 02_
                   如果图片总是3位数,则序号为001_ 002_
                   如果图片总是4位数,则序号为0001_ 0002_
文件名中第1个"_"前是序号
……
分别放在【试卷】【答案】文件后,删除文件名第1个"_"和它前面的序号


谢谢
发表于 2024-1-15 10:38:34 | 显示全部楼层
如果显示正确,把 echo 去掉
  1. @echo off
  2. setlocal enabledelayedexpansion

  3. pushd jpg

  4. for /f "usebackq" %%a in (` dir /b *.jpg `) do (
  5.         set /a n+=1
  6.         set /a m=!n! %% 2
  7.         if !m! == 1 (
  8.                 echo move %%a 1
  9.         ) else (
  10.                 echo move %%a 2
  11.         )
  12. )

  13. popd

  14. pause
复制代码
 楼主| 发表于 2024-1-15 11:53:45 | 显示全部楼层
回复 2# newswan

谢谢 测试运行后 文件夹属性好像变了 再帮忙调整一下 辛苦
   
发表于 2024-1-15 12:10:45 | 显示全部楼层
move 后面的 1 2 是 目录
发表于 2024-1-15 12:15:23 | 显示全部楼层
回复 2# newswan


避免move命令不小心导致数据丢失
http://bbs.bathome.net/thread-67817-1-1.html#pid275907
发表于 2024-1-15 12:21:39 | 显示全部楼层
回复 1# qd2024
  1. @echo off
  2. set "Folder1=试卷"
  3. set "Folder2=答案"
  4. md "%Folder1%" "%Folder2%" 2>nul
  5. setlocal enabledelayedexpansion
  6. for /f "delims=" %%a in ('dir /b /a-d *.jpg') do (
  7.     set /a n+=1
  8.     set /a m=!n!%%2
  9.     if !m! == 1 (
  10.         move "%%a" "%Folder1%"
  11.     ) else (
  12.         move "%%a" "%Folder2%"
  13.     )
  14. )
复制代码
 楼主| 发表于 2024-1-15 23:17:10 | 显示全部楼层
回复 6# ShowCode


    谢谢 测试成功
 楼主| 发表于 2024-1-15 23:19:03 | 显示全部楼层
回复 4# newswan


    感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 06:09 , Processed in 0.019640 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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