Pode localizar a saída do comando somente arquivos genuínos (não diretórios)

4

Estou construindo um catálogo / indexador caseiro de meus arquivos PDF / DJVU / EPUB / LIT / não especificados. Eu preciso apenas indexar os nomes dos arquivos. O conteúdo da indexação não é necessário, pois sempre mantenho nomes de arquivos descritivos. O comando locate faz um bom trabalho e produz os resultados (depois que eu construo o índice com updatedb).

No entanto, gostaria de ver apenas arquivos genuínos, não diretórios. Posso manipular a localização em tal comportamento?

    
por Magguu 08.01.2016 / 17:56

1 resposta

2

Não estou ciente de nenhuma implementação locate que verifique os tipos de arquivo.

Você pode usar o Bash para filtrar a locate output:

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

Ou você pode usar find com a opção -type f :

while read -r -d $'
find / -name something -type f
' f do [ -f "$f" ] && echo "$f" done < <(locate -0 something)
    
por Andrea Corbellini 08.01.2016 / 18:27