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

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

本帖最后由 liaoguinan 于 2023-5-17 23:04 编辑


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

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

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

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

  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
复制代码

TOP

回复 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

TOP

本帖最后由 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

评分人数

TOP

回复 3# liaoguinan

保存为ANSI编码试试
1

评分人数

TOP

返回列表