Liste todos os arquivos com menos de 1024 bytes de tamanho e os nomes terminados em * zip

0

Como o título indica, como eu faria para canalizar esse comando? Eu sei como fazer cada um separadamente, mas nenhum indício sobre como combiná-los em um comando.

find . -type f -size -1024c -ls | ls -l *zip

me dê todos os arquivos terminados em zip, mas alguns são maiores que 1024 bytes

    
por Drew 19.09.2017 / 09:13

2 respostas

1

Use a opção -name em find

find . -type f -name '*zip' -size -1024c -ls

Geralmente, é uma boa ideia citar o padrão para que ele seja resolvido por 'find' e não pelo shell (caso contrário, se você tiver um .zip no diretório atual, o shell substituirá o padrão por esse nome) .

Se você quiser executar um comando no arquivo "encontrado", veja a opção -exec de find. Casos mais complexos são tratados canalizando os nomes de saída para xargs {command} (nesse caso, a opção -print0 de find e -0 de xargs é recomendada).

    
por 19.09.2017 / 09:35
1

Como o G-Man mencionou em um comentário: use -name :

find . -type f -size -1024c -name '*zip' -ls
    
por 19.09.2017 / 09:36