我正在尝试确定共享网络驱动器上是否存在目录 .
import os
if(os.path.exists('/Volumes')):
print 'path exists'
else:
print 'path does not exist'
这工作正常,但在传递此参数时失败:'/ Volumes / A21 's \ Public \ Folder'
这对我来说很有意义,因为在我在Finder上打开共享驱动器之前,这不存在 . 所以我想我需要先挂载,我先从命令行尝试 -
mount_smbfs smb://guest@server/A21's Public Folder
这失败了,所以我不确定为os.path.exists参数传递什么 . 理想情况下,我希望能够先装入/ Volumes / A21的公用文件夹,然后再检查该文件夹是否存在?
2 回答
问题可能是您复制并粘贴字符串 . 我之前遇到过这个问题 . 处理文件路径时,最好使用os join,遇到的问题较少
尝试使用:
例如:
在
Python
中,您将基本上执行与Bash
装载共享中相同的例程:这样做是在用户主目录中将挂载点设置为
mnt
;如果文件夹不存在则会创建它 . 然后该命令将更改到该目录并安装smb
. 您需要输入密码,或者如果您想要一种非常安全的方式,那么您始终可以在命令中包含密码(例如username:password
) .挂载共享后,您可以检查文件是否存在: