在wxPython空间中复制cp

时间:2013-05-07 16:04:22

标签: python wxpython cp

在一个小的wxPython程序中,我创建了一个for循环,它接收文件列表中的项目并使用cp copy复制它们。一切都很好,并在其路径上没有空间的源上工作。但是当引入源代码时,cp函数无法找到我的源代码。 这是我的代码:

if f_name in selectedsecondcource:
    self.counter += 1
    self.toPrint = self.counterText + str(self.counter) + "/" + str(len(selectedList))
    self.oncopy.SetLabel(self.toPrint)
    src_abs_path = os.path.join(r, file)
    src_relative_path = os.path.relpath(src_abs_path, self.twoDirFilename)
    dst_abs_path = os.path.join(self.DirDest, src_relative_path)
    dst_dir = os.path.dirname(dst_abs_path)
    if not os.path.exists(dst_dir):
        os.makedirs(dst_dir)
    ret = os.system('cp -fr %s %s' % (src_abs_path, dst_abs_path))

感谢任何帮助。 虽然这是我的第一个Python程序,但我对Python的理解比thisos.system更好(' cp ... stuff。

总结:如何在目录名称中包含空格的源上进行此工作?

由于 加文

1 个答案:

答案 0 :(得分:0)

正常情况下,如果文件名以空格分隔,则命令不起作用。

尝试使用引号:

ret = os.system('cp -fr "%s" "%s"' % (src_abs_path, dst_abs_path))

但这更好:http://docs.python.org/2/library/shutil.html#shutil.copy