Python:使用符号链接复制目录树

时间:2016-06-14 11:01:27

标签: python python-2.7 directory file-copying

在Python中我试图复制一个目录(实际上是它的Jenkins作业目录),但它包含符号链接,当我复制时我得到:

Traceback (most recent call last):
  File "BackupJenkinsJobs.py", line 272, in <module>
    main()
  File "BackupJenkinsJobs.py", line 208, in main
    distutils.dir_util.copy_tree(JenkinsJobSrc, cleanJobsDir, preserve_symlinks=False)
  File "c:\Python27\lib\distutils\dir_util.py", line 163, in copy_tree
    verbose=verbose, dry_run=dry_run))
  File "c:\Python27\lib\distutils\dir_util.py", line 163, in copy_tree
    verbose=verbose, dry_run=dry_run))
  File "c:\Python27\lib\distutils\dir_util.py", line 167, in copy_tree
    dry_run=dry_run)
  File "c:\Python27\lib\distutils\file_util.py", line 148, in copy_file
    _copy_file_contents(src, dst)
  File "c:\Python27\lib\distutils\file_util.py", line 32, in _copy_file_contents
    fsrc = open(src, 'rb')
IOError: [Errno 22] invalid mode ('rb') or filename: 'C:\\Program Files (x86)\\Jenkins\\jobs\\AutoRunTemplate\\builds\\lastFailedBuild'

我使用以下代码:

try:
    distutils.dir_util.copy_tree(JenkinsJobSrc, cleanJobsDir, preserve_symlinks=False)

except distutils.errors.DistutilsFileError as e:
    print("Unable to copy Jenkins jobs. Error: %s".format(e))
    return

如果复制,忽略链接,任何帮助都会受到赞赏,因为preserve_symlinks似乎不起作用。

0 个答案:

没有答案