检查文件是否存在,并在没有paramiko的情况下使用python将其删除

时间:2016-05-04 09:30:28

标签: python unix share

我想检查共享文件夹fake-file.txt上是否存在某个文件//123.456.7.890/Data/,如果存在,我想将其删除并写入新文件real-file.txt。我想要使用paramiko模块执行此任务,并让它在这样的Windows机器上工作:

filename = '//123.456.7.890/Data/fake-file.txt'
if os.exists(filename):
    os.remove(filename)
    #and so on

但是,此方法不适用于基于unix的计算机(在本例中为CentOS)。我得到一个文件不存在的IOError。我对基于unix的机器并不熟悉,因此参考文件可能出现问题。我该如何解决这个问题?如果有什么不清楚,请告诉我!

PS。该文件夹受密码保护,我可以从终端

ssh到它

1 个答案:

答案 0 :(得分:1)

这不是一个Python问题。在Linux上,您可以通过将远程文件系统挂载到本地空目录(可能需要您没有的权限)来访问远程文件系统,然后通过该目录访问它们(然后称为挂载点)。像

这样的东西
$ mkdir ./1234567890
$ mount -t cifs //123.456.7.890/Data -o username=username,password=password ./1234567890

如果成功,您在Python程序中使用的linux文件名将为./1234567890/fake-file.txt

某些Linux系统可能配置了自动挂载程序系统,以便特定的文件存储引用自动为您执行挂载。您需要与本地系统管理部门联系,以确定是否以及如何在本地实施。

PS 123.456.7.890不是有效的IP地址,但我假设您选择隐藏您实际使用的真实有效IP地址。 123.45.67.89对于"随机"是更好的选择。 IP地址,或192.168.22.33(随机私有IP)。