4

我需要从远程机器复制文件。

代码是这样的

import shutil

shutil.copyfile('//XXX.XXX.XXX.XXX/home/Shares Folder/file.txt','/home/file.txt')

该文件的位置是一个共享文件夹,但每次我运行它都会给我这个错误

文件“”,第 1 行,在?

文件“usr/lib/python2.4/shutil.py”,第 47 行,在 copyfile

frsc = open (src,'rb')

IOError:[Errno 2] 没有这样的文件或目录:'//XXX.XXX.XXX.XXX/home/Shares Folder/file.txt'

请注意,我在当前机器上运行此脚本,而我要复制的文件在远程机器上。我不确定这个细节是否相关,我还是说。

我 100% 确定该文件在那里,所以我想知道为什么它会给我这样的错误消息。

我使用 CentOS 和 python 2.4.3

有任何想法吗?

4

2 回答 2

1

您还使用 samba 和共享文件夹进行了标记 - 如果您尝试通过 samba 进行复制,您可能需要查看 pysmbc 或类似的 python samba 库。 http://pypi.python.org/pypi/pysmbc/甚至有一个通过 samba 打开和读取文件的示例 - 这是在本地写出内容的一小步。

于 2012-10-25T05:31:18.313 回答
1

shutil不支持远程文件复制。它仅适用于本地副本。如果你的两台机器都是基于 UNIX 的,你可以尝试使用一些模块来实现你可用的传输(SSH/SFTP, rsync, whanot)

于 2012-10-25T04:49:49.777 回答