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

[文件操作] 批处理如何实现将文本中列出的文件/文件夹复制或移动到指定文件夹里

本帖最后由 pcl_test 于 2016-9-8 17:42 编辑

批量复制或者移动文件夹和文件到指定文件夹
现在是一个文件夹中有若干子文件夹和单文件,子文件夹中也有若干单个文件。
需要将子文件夹也当成单个文件进行移动处理,视每个子文件夹为一个单个文件。现在有需要移动的文件清单(可以是excel和txt文件列表),文件清单中包含单个文件和文件夹。
请教如何将清单中的文件和文件夹批量复制或者移动到指定文件夹,如果可行,最好能将移动失败或者原文件夹中没有的列出到txt文件。
1

评分人数

本帖最后由 949825667@qq.co 于 2016-9-9 17:56 编辑
  1. import os
  2. import shutil
  3. import re
  4. lis=open('list1.txt', 'r').read().split()
  5. yuan = r'C:\Users\xxxx\Desktop\求助资料\求助资料\原文件夹'
  6. target = r'C:\Users\xxxx\Desktop\求助资料\求助资料\目标文件夹'
  7. for i in os.listdir(yuan):
  8.     inew = re.split('[\n|.]',i)[0]
  9.     if inew in lis:
  10.         old = os.path.join(yuan,i)
  11.         new = os.path.join(target,i)
  12.         lis.remove(inew)
  13.         if os.path.isdir(old):
  14.             if os.path.exists(new):
  15.                 pass
  16.             else:
  17.                 shutil.copytree(old,new)
  18.         else:
  19.             shutil.copy(old,new)
  20. for s in lis:
  21.     open('list2.txt', 'a+').write(s+'\n')
复制代码
根据你给的求助资料改的。你有时间等不如看看Python怎么用,和bat差不多!
啥都不懂,啥都不会!学的还慢!

TOP

回复 2# 949825667@qq.co


    不知道是我弄错了还是其他原因,没有成功,我也不懂BAT,只晓得使用。

TOP

本帖最后由 949825667@qq.co 于 2016-9-8 13:46 编辑

回复 3# prily1314


    这个不是bat,需要安装Python使用,3.0以上的版本即可。Python安装和使用很简单,你自己百度一下吧!
啥都不懂,啥都不会!学的还慢!

TOP

回复 3# prily1314


    你只要修改三个关键参数就好了,一个是你的清单文件,一个是源文件目录,一个是你目标文件目录
啥都不懂,啥都不会!学的还慢!

TOP

本帖最后由 pcl_test 于 2016-9-8 13:58 编辑

回复 3# prily1314

2楼重新改了一下,如果文件清单里的文件没有的话,会列在buglist.txt这个文件里面
啥都不懂,啥都不会!学的还慢!

TOP

回复 4# 949825667@qq.co


      这个不是bat啊,Python不会使用,希望能用bat解决,想必应该不难的。

TOP

回复 7# prily1314


    东西给你了,用不用在你了!我不会bat,你等大神吧!
啥都不懂,啥都不会!学的还慢!

TOP

想必应该是不难的,交给你们了
1

评分人数

TOP

想必应该是不难的,交给你们了

TOP

请给出以下信息以便测试代码
1. 原始目录结构
2. 希望到的目录结构
3. 需要移动的文件清单

TOP

回复 11# GNU


    谢谢

TOP

返回列表