如果找到给定文件的部分名称,则需要返回目录路径 使用python Globe方法执行此操作将返回错误 这就是我所拥有的 ./test/my/app/upgrade/sql.upgarage.script.sh
pathx = ./test/my/app/upgrade/
partial_name = "upgarage.script"
for inner_dir in glob.glob(pathx + '/*' + partial_name + '*'):
if not os.path.exists(dir_path):
print("...error ..")
inner_dir返回的内容是文件的全名和完整路径,而不是pathx中的路径。
现在的情况是该文件也可以位于内部:
/test/my/app/upgrade/ver1/a/sql.upgarage.script.sh
,如果找到,它将返回:
/test/my/app/upgrade/ver1/a/
我的问题出在哪里?
答案 0 :(得分:2)
使用**
+ recursive=True
,而glob将对此起作用。
https://docs.python.org/3/library/glob.html#glob.glob
glob.glob(pathname, *, recursive=False)
如果递归为true,则模式“ **”将匹配任何文件以及零个或多个目录,子目录和目录的符号链接。如果此模式后接os.sep或os.altsep,则文件将不匹配。