Algo como isso funcionaria:
for dir in 'find ./serverfault -maxdepth 1 -type d'
do
find_output=$( find ${dir} -type f -name "*#*_SMALT" )
test -z "${find_output}" && echo $dir
done
Esse loop faz o seguinte:
- Obtenha uma lista de diretórios no local especificado.
- Para cada diretório, execute um comando
find
para procurar o nome do arquivo desejado. - Verifique se a saída do comando
find
está vazia. Se é imprimir o nome do diretório.
Para obter os resultados inversos, use test -n
para verificar se a saída desse comando find
encontrou algo.
Editar : Eu não entendi completamente a pergunta, então reescrevi minha resposta.