Usando o GNU find:
find . -size +1k -type f -iregex '.*\.html?$' \
-not -iregex '.*\(backup\|form\|docs\|google\).*'
Isso localiza todos os arquivos acima de 1k com nomes correspondentes ao regex .*\.html?$
, mas não usando o regex .*\(backup\|form\|docs\|google\).*
Se você quiser arquivos apenas no diretório atual e não em subdiretórios, use a opção -maxdepth 1
.
find . -maxdepth 1 -size +1k -type f -iregex '.*\.html?$' \
-not -iregex '.*\(backup\|form\|docs\|google\).*'
Você pode fazer o que precisar com essa lista de arquivos, por exemplo, adicionando uma opção -exec ...
, ou -print0
e pipe a xargs -0r
.