定位命令只能输出真实文件(而不是目录)

定位命令只能输出真实文件(而不是目录)

我正在为我的 PDF/DJVU/EPUB/LIT/未指定文件构建一个自制目录/索引器。我只需要索引文件名。不需要索引内容,因为我总是保留描述性文件名。locate 命令做得很好,并输出结果(在我使用 updatedb 构建索引之后)。

但是我只想看到真正的文件,而不是目录。我可以操纵定位来实现这样的行为吗?

答案1

我不知道有任何locate检查文件类型的实现。

您可以使用 Bash 来过滤输出locate

while read -r -d $'\0' f
do
    [ -f "$f" ] && echo "$f"
done < <(locate -0 something)

或者您可以使用find以下-type f选项:

find / -name something -type f

相关内容