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

[文件操作] [已解决]批处理如何把目标文件夹下的图片放入对应的文件夹內?

[复制链接]
发表于 2023-5-17 14:41:59 | 显示全部楼层 |阅读模式
本帖最后由 liaoguinan 于 2023-5-17 23:04 编辑


如何把图①里的图片根据文件夹名称前缀判断移动放入对应的图②文件夹内?

图③是未放入的目录样式
图④是放入后的样式。
如果图④文件夹内已有对应名称则不操作该名称图片

源文件图片是放在桌面新文件夹9
目标文件夹是放在桌面新文件夹8

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2023-5-17 15:30:05 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. set "sou=新建文件夹 (9)"
  3. set "des=新建文件夹 (8)"
  4. for /f  "delims=" %%a in ('dir /a-d /b "%sou%"') do (
  5.      for /f  "delims=-" %%b in ("%%a") do (
  6.           md "%des%\%%b" 2>nul
  7.           copy "%sou%\%%a" "%des%\%%b"
  8.      )
  9. )
  10. pause
复制代码
 楼主| 发表于 2023-5-17 16:00:40 | 显示全部楼层
回复 2# terse


    测试了显示找不到文件?路径我是这样改的



@echo off&setlocal enabledelayedexpansion
set "sou=C:\Users\Administrator\Desktop\新建文件夹 (9)"
set "des=C:\Users\Administrator\Desktop\新建文件夹 (8)"
for /f  "delims=" %%a in ('dir /a-d /b "%sou%"') do (
     for /f  "delims=-" %%b in ("%%a") do (
          md "%des%\%%b" 2>nul
          copy "%sou%\%%a" "%des%\%%b"
     )
)
pause
发表于 2023-5-17 16:48:45 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2023-5-17 16:59 编辑

批处理放在源文件夹和目标文件夹同一目录,并保存为ANSI编码:
  1. @echo off&setlocal enabledelayedexpansion
  2. set "sou=新建文件夹 (9)"
  3. set "des=新建文件夹 (8)"
  4. for /f "delims=" %%a in ('dir /ad /b "%des%"') do (
  5.     pushd "%sou%"
  6.     for /f "delims=" %%b in ('dir /a-d /b "%%a-*.jpg"') do (
  7.         if not exist "..\%des%\%%a\%%b" move "%%b" "..\%des%\%%a"
  8.     )
  9.     popd
  10. )
  11. pause
复制代码
刚刚修改了代码

评分

参与人数 1技术 +1 收起 理由
liaoguinan + 1 感谢

查看全部评分

发表于 2023-5-17 17:51:45 | 显示全部楼层
回复 3# liaoguinan

保存为ANSI编码试试

评分

参与人数 1技术 +1 收起 理由
liaoguinan + 1 感谢

查看全部评分

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

本版积分规则

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

GMT+8, 2026-3-18 20:49 , Processed in 0.018133 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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