标题: [文本处理] 批处理如何根据Excel表格列出的文件与文件夹对应的关系将文件移动到相应文件夹里? [打印本页]
作者: michaelaa 时间: 2016-5-21 12:19 标题: 批处理如何根据Excel表格列出的文件与文件夹对应的关系将文件移动到相应文件夹里?
本帖最后由 pcl_test 于 2016-5-21 14:00 编辑
有一个文件夹ALL包含了所有文件,文件名以10001,10002........11000.PDF几千个文件,现在想将这些文件归档。
手上有一份清单Excel表,里面有信息归类如下:
10001.PDF A
10002.PDF B
10003.PDF C
10004.PDF A
10005.PDF C
10006.PDF C
10007.PDF A
10008.PDF C
10009.PDF C
.
.
.
然后以A,B,C.....创建文件夹,将对应的PDF文件移动到文件夹里面。
假设所有的文件都在D盘,请老师指教如何操作,谢谢!
作者: michaelaa 时间: 2016-5-21 13:42
有老师帮帮我吗?
作者: /zhqsystem/zhq 时间: 2016-5-21 13:44
本帖最后由 /zhqsystem/zhq 于 2016-5-21 15:45 编辑
回复 1# michaelaa
文件超过1K过大不传了
红色区域,被论坛过滤改成空格了,无语
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('type ".\all.txt"')do (
- set "name=%%i"
- set "name=!name:TAB标点手动写入=\!"
- for /f "delims=" %%j in ("\!name!")do (
- if not exist "%~f1\%%~pj\" md "%~f1\%%~pj"
- move,"%~f1\%%~nxj" "%~f1\%%~pj"
- )
- )
- pause
复制代码
文本格式[注意不是空格是TAB的键的标点,word本身复制出的列就是这个格式不需要改动]
ATAB标点10001.PDF
作者: michaelaa 时间: 2016-5-21 13:46
回复 3# /zhqsystem/zhq
请问是回答我的问题吗?
作者: /zhqsystem/zhq 时间: 2016-5-21 13:55
回复 4# michaelaa
3楼已更新,按错键好几次没编辑完就回,无语
作者: michaelaa 时间: 2016-5-21 14:02
回复 3# /zhqsystem/zhq
老师你好,谢谢你的回答,复制出来的文本,没有写入你的代码啊。
作者: michaelaa 时间: 2016-5-21 14:29
回复 3# /zhqsystem/zhq
老师是复制出这样子吗?然后怎么操作
A 10001.PDF
B 10002.PDF
C 10003.PDF
A 10004.PDF
C 10005.PDF
C 10006.PDF
A 10007.PDF
C 10008.PDF
C 10009.PDF
A 10010.PDF
B 10011.PDF
C 10012.PDF
A 10013.PDF
C 10014.PDF
C 10015.PDF
A 10016.PDF
C 10017.PDF
C 10018.PDF
A 10019.PDF
作者: /zhqsystem/zhq 时间: 2016-5-21 15:26
回复 7# michaelaa
代码处已更新附带说明,由于文件过大比代码字数多没有上传
作者: michaelaa 时间: 2016-5-21 16:08
回复 8# /zhqsystem/zhq
诶,还是不行,指定的路径无效。
作者: michaelaa 时间: 2016-5-21 16:18
回复 3# /zhqsystem/zhq
按照你的指点,做了两个文件,运行Bat,但是提示指定的路径无效。
作者: 回家路上 时间: 2016-5-21 16:39
- @echo off
- :: 放文件的目录
- set p=%~dp0FileCenter
- :: All.txt和脚本放一起
- for /f "tokens=1,* delims= " %%i in (All.txt) do (
- mkdir "%p%\%%i" 2>nul
- if exist "%p%\%%j" (
- move "%p%\%%j" "%p%\%%i"
- ) else echo;%%j文件不存在,请核对!
- )
- pause & exit /b
复制代码
作者: michaelaa 时间: 2016-5-21 18:07
回复 11# 回家路上
谢谢老师回复,但是还是不成功!返回文件不存在,请核对!
作者: /zhqsystem/zhq 时间: 2016-5-21 19:27
回复 10# michaelaa
取值拖拽是文件夹并非是文件也就是将all文件夹拖拽到批处理上,
all.txt要放在BAT的所在目录即可生效,
我的预想是不可能每次拖拽文件,上万个拖拽到猴年马月啊,一个文件夹全部搞定
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |