python file.exists不在程序中但在python控制台中工作(交互式)

时间:2016-11-22 07:03:12

标签: python-3.x os.path

有一个简单的程序来克隆远程git repo并检查是否存在少量文件/目录。

简单地说,在一个目录下,在完成git clone之后,进入那个新目录(由git clone创建)并查找是否存在少量文件/目录,这里的问题是如果我检查thro程序就说这样的文件/目录未找到但如果它执行ls(在终端中)或使用os.path.exists转到python控制台检查存在它是否存在

#!/bin/env python
import os
import subprocess
base_dir='/something'
os.chdir(base_dir)
subprocess.Popen(["git clone github.com/something.git"],shell=True, stdout=subprocess.PIPE)
os.chdir(something)
some_file=base_dir+"/"+something+"/"+"good_directory/subdirectory/good_file"
if os.path.exists(some_file):
    print("nice")
else:
    print("oh file doesnt exist!")


try:
    shutil.rmtree(something)
except OSError:
     pass

当我运行这个程序时,它说" good_file"不存在(它存在!)但是当我在交互模式下运行时,它显示为TRUE。 我肯定错过了什么,请帮助我。

0 个答案:

没有答案