2014-09-28 77 views
0

我有一个包含大量文件夹和子文件夹的硬盘。 格式是这样的:以递归方式列出最后一个文件夹

/genre1 /艺术家/套的.jpg

的pictures1 /列表的,但它也可以是

/genre2 /套的.jpg

的pictures2 /名单

我想获得.jpg所在路径的完整列表。它们是每个文件夹树的最后一个文件夹。

我该如何做一个shell脚本? 我试图用mindepth或maxdepth和-type d来使用“find”,但是我不知道我必须寻找多少深度级别..它可以改变。

感谢

回答

0

如果你不使用gnu find您可以使用-links测试中this answer

find/-type d -links 2 -exec \ 
    find {} -maxdepth 1 -type f -name '*.jpg' -printf "%h\n" -quit \ 
\; 

,你可以这样做

find/-type d -links 2 -exec \ 
    bash -c 'shopt -s dotglob nullglob; a=(*.jpg); ((${#a[@]}>0)) && echo "$1"' bash {} \ 
\; 
相关问题