我遇到当前目录无效的情况(即某些程序删除它时)。我的Python脚本调用os.getcwd()
,它以以下异常终止
OSError: [Errno 2] No such file or directory
理想情况下,我的脚本会在这种情况下自动进入父目录。 推荐的策略何时实施?
注意,如果我从shell中尝试ls
,我会得到ls: cannot open directory .: Stale NFS file handle
答案 0 :(得分:2)
理想情况下,我的脚本会在这种情况下自动进入父目录。推荐的策略何时实现?
只需使用 try/except
块,这就是我们拥有它们:)
try:
os.getcwd()
except OSError:
os.chdir("..")
os.getcwd()
或类似的东西......
[编辑]无论如何,我猜这种情况对你的应用程序来说真的很糟糕 - 删除了dir,或者破坏了NFS连接等等,这可能不应该仅仅通过改变dir来实现 - 这当然取决于app ...