标题: [文件操作] 批处理如何将前几位相同数字的文件,转移到相同文件名的文件夹中? [打印本页]
作者: 脑袋大 时间: 2023-8-10 14:49 标题: 批处理如何将前几位相同数字的文件,转移到相同文件名的文件夹中?
各位大佬好,想请教一下,有没有什么办法可以将红框内的前几位相同数字的文件,转移到右侧建好的相同文件名的文件夹中吗?
作者: Batcher 时间: 2023-8-10 14:50
回复 1# 脑袋大
请给一个真实的例子说明一下你的需求吧。
如果需要上传文件,可以用阿里云盘或百度网盘。
如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
作者: Batcher 时间: 2023-8-10 14:56
回复 1# 脑袋大
请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
test.bat和你的pdf文件放在同一个文件夹下执行- @echo off
- cd /d "%~dp0"
- for /f "delims=" %%i in ('dir /b /a-d *.pdf') do (
- set "FileName=%%i"
- setlocal enabledelayedexpansion
- set "FolderName=!FileName:~0,19!"
- if not exist "!FolderName!" (
- md "!FolderName!"
- )
- move "%%i" "!FolderName!"
- endlocal
- )
复制代码
作者: 脑袋大 时间: 2023-8-10 15:37
回复 3# Batcher
再麻烦一下大佬,执行之后建好的文件夹下,能不能再建三个子文件夹:1.原地籍档案 2.变化原因 3.国有 ;然后文件夹下的PDF文件放进文件夹1.原地籍档案中,批处理能做到吗?[img][/img]
作者: Batcher 时间: 2023-8-10 15:47
回复 4# 脑袋大 - @echo off
- cd /d "%~dp0"
- for /f "delims=" %%i in ('dir /b /a-d *.pdf') do (
- set "FileName=%%i"
- setlocal enabledelayedexpansion
- set "FolderName=!FileName:~0,19!"
- if not exist "!FolderName!" (
- md "!FolderName!\1.原地籍档案"
- md "!FolderName!\2.变化原因"
- md "!FolderName!\3.国有"
- )
- move "%%i" "!FolderName!\1.原地籍档案"
- endlocal
- )
复制代码
作者: qixiaobin0715 时间: 2023-8-10 16:15
如果你顶楼所说的文件夹预先已创建,这样也行:- @echo off
- for /f "delims=" %%i in ('dir /b /ad') do (
- if exist %%i*.pdf (
- md "%%i\1.原地籍档案"
- md "%%i\2.变化原因"
- md "%%i\3.国有"
- move "%%i*.pdf" "%%i\1.原地籍档案"
- )
- )
复制代码
作者: qixiaobin0715 时间: 2023-8-10 16:48
本帖最后由 qixiaobin0715 于 2023-8-10 19:48 编辑
如果是执行3楼代码后,要继续完成4楼任务:- @echo off
- for /f "delims=" %%i in ('dir /b /ad') do (
- md "%%i\1.原地籍档案"
- md "%%i\2.变化原因"
- md "%%i\3.国有"
- move "%%i\*.pdf" "%%i\1.原地籍档案"
- )
复制代码
开始代码有误,已修改
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |