Board logo

标题: [文件操作] 【已处理】现在求一个批处理根据文件类型/扩展名/后缀名整理文件夹 [打印本页]

作者: 开心旺旺    时间: 2015-3-28 10:05     标题: 【已处理】现在求一个批处理根据文件类型/扩展名/后缀名整理文件夹

本帖最后由 pcl_test 于 2016-10-9 21:30 编辑

求一个批处理分文件夹类型的。犹豫电脑东西太多了,一个文件夹下面有N多个子文件夹。有的子文件夹里面有PDF,有的有TXT,有的有EPUB格式的,想要通过子文件下面的文件给整个子文件分类。能把这个文件夹下的所有包含PDF的文件夹放到一个文件夹里,把所有包含TXT的放在一个文件夹里。当然如果文件夹里面有PDF也有TXT,可以自己设置优先级。求大大帮忙
作者: pcl_test    时间: 2015-3-28 10:37

本帖最后由 pcl_test 于 2017-6-20 22:07 编辑

回复 1# 开心旺旺
  1. @echo off
  2. for /r "E:\test\" %%a in (*.txt *.pdf) do (
  3. if /i "%%~xa" == ".txt" move "%%a" "D:\txt\"
  4. if /i "%%~xa" == ".pdf" move "%%a" "D:\pdf\"
  5. )
  6. pause
复制代码

作者: 开心旺旺    时间: 2015-3-28 10:59

回复 2# pcl_test


    不行 ,路径设置好了 文件夹建立好了  文件没动
作者: 开心旺旺    时间: 2015-3-28 11:01

回复 2# pcl_test


    不好意思 ,刚才有实验了一下 确实动了 但只是文件夹里面的格式,我的意思是最好连所带TXT的子文件一起移动过去。
作者: pcl_test    时间: 2015-3-28 11:06

回复 4# 开心旺旺
包括子文件夹里的txt的,设置好你的总目录路径
作者: 开心旺旺    时间: 2015-3-28 11:11

回复 5# pcl_test


    移动是子文件里面的东西 我需要带这此文件夹一起移动 。大大
作者: 开心旺旺    时间: 2015-3-28 11:13

A 文件夹 下面是 B  C D 三个文件夹   B包含.txt  c 包含 .PDF  D包含.epub的
要把包含TXT文件的文件夹 移动到E盘 TXT文件夹下
  要把包含PDF文件的文件夹 移动到E盘 PDF文件夹下
要把包含EPUB文件的文件夹 移动到E盘EPUB文件夹下
作者: pcl_test    时间: 2015-3-28 11:15

回复 6# 开心旺旺

新手提问必读
http://www.bathome.net/thread-13187-1-1.html
http://www.bathome.net/thread-9959-1-1.html
http://www.bathome.net/thread-7690-1-1.html
作者: 开心旺旺    时间: 2015-3-28 11:33

回复 8# pcl_test


    大大我不明白什么意思
作者: pcl_test    时间: 2015-3-28 11:34

本帖最后由 pcl_test 于 2015-3-28 12:10 编辑

回复 7# 开心旺旺
  1. @echo off
  2. for /f "delims=" %%a in ('dir /ad /s /b "D:\test\"') do (
  3. if exist "%%a\*.txt" md "D:\txt\%%~na\" 2>nul & move "%%a\*.txt" "D:\txt\%%~na\"
  4. if exist "%%a\*.pdf" md "D:\pdf\%%~na\" 2>nul & move "%%a\*.pdf" "D:\pdf\%%~na\"
  5. )
  6. pause
复制代码

作者: 开心旺旺    时间: 2015-3-28 11:39

回复 10# pcl_test


    大大 文件夹是过去了,但是文件夹里面的文件又没了 :L :L
作者: pcl_test    时间: 2015-3-28 11:41

回复 11# 开心旺旺
把 move前的echo去掉,已在10楼更正
作者: 开心旺旺    时间: 2015-3-28 11:48

回复 12# pcl_test
作者: pcl_test    时间: 2015-3-28 12:10

回复 13# 开心旺旺

10楼已更正
作者: 开心旺旺    时间: 2015-3-28 13:33

回复 14# pcl_test


    大大还有最后一个问题,这个能设置优先级么 , 如果这个文件既有WORD 也有PDF 我想优先PDF 怎么做
作者: pcl_test    时间: 2015-3-28 13:37

回复 15# 开心旺旺

不明白你所说的优先级是怎么意思?既然是移动到不同目标文件夹里,那么原来的文件夹里有什么文件不会相互影响,移动后各目标文件里也只包含各自类型的文件,不会参杂其他类型的文件
作者: 开心旺旺    时间: 2015-3-28 13:42

回复 14# pcl_test


    或者是剪切文件夹,只要我点过了PDF的 就把PDF那个文件夹整个剪切过去了,在弄TXT的 就排除了那个文件夹
作者: 开心旺旺    时间: 2015-3-28 13:45

回复 16# pcl_test


    我的意思是这个文件夹 水浒传有PDF有TXT , 如果 我先提取 PDF 他在PDF文件生成了 这本书的文件夹及文件, 我又点TXT的,他又在TXT的文件夹生成了改文件。
不同的是 PDF文件夹 有水浒传,TXT文件夹下还有一本水浒传。 我想要达到这样的效果。 我喜欢看PDF版的水浒传,点了PDF,这本书直接剪切到PDF文件夹下,当我在筛选其他书的时候点TXT版,TXT里面就不会有水浒传了。是这个意思。
作者: pcl_test    时间: 2015-3-28 13:46

回复 17# 开心旺旺

你把文件夹剪切过去,那不就把里面的txt文件也带过去了吗?剪切是怎么回事,你要弄清楚
作者: 开心旺旺    时间: 2015-3-28 13:49

回复 16# pcl_test 例如这样的文件夹 如果我点了 他会在 WORD版和epub文件夹 各生成一本同样的书
作者: pcl_test    时间: 2015-3-28 13:50

回复 18# 开心旺旺
10楼的代码就是做了分类的,所以不管你文件只包含txt或是pdf还是两种文件都有,移动后在各自文件夹不会相互参杂,16楼已说明
作者: 开心旺旺    时间: 2015-3-28 13:52

回复 21# pcl_test


    不好意思发错图了
作者: 开心旺旺    时间: 2015-3-28 13:53

回复 21# pcl_test
作者: pcl_test    时间: 2015-3-28 13:53

回复 20# 开心旺旺

图文对不上,你先理清楚思路,组织下语言再提问
作者: pcl_test    时间: 2015-3-28 13:58

回复 23# 开心旺旺
你要对什么格式的进行分类,在10楼代码添加即可,语法类似
  1. if exist "%%a\*.doc" md "D:\doc\%%~na\" 2>nul & move "%%a\*.doc" "D:\doc\%%~na\"
复制代码

作者: 开心旺旺    时间: 2015-3-28 14:00

回复 25# pcl_test


    谢谢大大  我在研究下 麻烦您了
作者: pcl_test    时间: 2015-3-28 14:06

回复 26# 开心旺旺
  1. @echo off
  2. ::同时对txt、pdf、doc、epub文件进行分类归档
  3. for /f "delims=" %%a in ('dir /ad /s /b "D:\test\"') do (
  4. ::对txt文件进行分类归档
  5. if exist "%%a\*.txt" md "D:\txt\%%~na\" 2>nul & move "%%a\*.txt" "D:\txt\%%~na\"
  6. ::对pdf文件进行分类归档
  7. if exist "%%a\*.pdf" md "D:\pdf\%%~na\" 2>nul & move "%%a\*.pdf" "D:\pdf\%%~na\"
  8. ::对doc文件进行分类归档
  9. if exist "%%a\*.doc" md "D:\doc\%%~na\" 2>nul & move "%%a\*.doc" "D:\doc\%%~na\"
  10. ::对epub文件进行分类归档
  11. if exist "%%a\*.epub" md "D:\epub\%%~na\" 2>nul & move "%%a\*.epub" "D:\epub\%%~na\"
  12. ::要对什么格式的进行分类,自行添加即可,语法类似
  13. )
  14. pause
复制代码





欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2