【发布时间】:2017-09-09 22:55:32
【问题描述】:
我正在尝试确定共享网络驱动器上是否存在目录。
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 的公用文件夹,然后再检查该文件夹是否存在?
【问题讨论】:
-
你到底要安装到什么位置?看来您根本没有安装它...您需要一个安装点。
-
没错,我之前没有安装。所以我在 if 语句之前添加了这一行 - os.system("osascript -e 'mount volume \"smb://A21._smb._tcp.local/A21\'s\ Public\ Folder\"'") 但是由于不正确的报价标记而失败。我想这将使文件夹可以在 /Volumes 下访问?
-
你可以把它放在
/Volumes下,虽然我更喜欢用户的主目录,因为你知道它有适当的权限;我想你总是可以从/Volumes到~/mnt建立一个符号链接......