递归复制进度文件

问题描述

| 我之前曾在这里询问过有关Python和复制文件的问题,但是我有一个不同的情况要处理。 我使用的Linux发行版安装程序几乎完成了工作,现在要做的就是将文件复制到目标分区。由于大多数发行版安装程序都有进度条,因此我也希望添加一个。 现在,我正在使用PyQt4,我的代码如下所示:
self.status(\'Counting files...\')
self.count = int(check_output([\'-c\',\'find /opt/linux/work/root-image/ -type f | wc -l\'],stderr = PIPE,shell = True))

self.status(\'Copying files...\')

i = 0

for root,dirs,files in os.walk(\'/opt/linux/work/root-image/\'):
  for file in files:
    i += 1
    f = os.path.join(root,file)

    try:
      os.system(\'mkdir -p /tmp/foo\' + os.path.split(f)[0])
    except:
      pass

    os.system(\'cp \' + f + \' /tmp/foo\' + f)

    if i % 100 == 0:
      self.emit(SIGNAL(\'progress(int)\'),int(100.0 * float(i) / float(self.count)))

self.status(\'Done...\')
由于进度条,效率很低。整个图像为
2.1GB
,并且脚本需要很长时间才能复制文件。比简单的“ 2”长得多。 有什么有效的方法可以做到这一点吗?对于单文件复制进度条,您要做的只是一次读取很少的块,但是我不知道如何对包含3个文件的目录执行此操作。 任何帮助都会有所帮助。谢谢!     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)