find /path/to/dir -type f -size +0
Eu preciso obter uma lista de nomes de arquivos com tamanho diferente de zero dentro de um diretório. Isso deve estar em um shell script, então o bash (ou um one-liner Perl) seria o ideal.
find /searchdir -type f -size +0c
encontrará arquivos com um tamanho de um ou mais bytes em /searchdir
e abaixo.
Somente shell, evitando encontrar, sem recursão em subdiretórios:
bash (para unset GLOBIGNORE):
for file in .* *; do
test . = "$file" && continue
test .. = "$file" && continue
# if you just want real files, no symlinks
# test -L "$file" && continue
test -f "$file" || continue
test -s "$file" || continue
# here do what you want with what is left
done