Eliminando nomes de arquivos de várias extensões da saída de localização

0

Eu preciso encontrar o tamanho de todos os arquivos em /etc com a extensão .conf . Tentei fazer isso com find /etc -type f -name "*.conf" -exec du -chB1 {} + , mas o find me forneceu arquivos .conf que possuem duas ou três extensões. A questão é como filtrar find output para obter apenas os arquivos com uma extensão, sendo .conf ? Isso pode ser alcançado através de find ou eu preciso de outro comando?

    
por george 15.11.2018 / 20:45

1 resposta

0

Você pode excluir os nomes de arquivo que contêm mais de um ponto:

find /etc -type f  ! -name '*.*.*' -name '*.conf'

Se você ainda quiser imprimir nomes de arquivos .conf ocultos (se houver, à la /etc/.pwd.lock ), então

find /etc -type f ! -name '?*.*.*' -name '*.conf'
    
por 15.11.2018 / 21:42