Você pode fazer:
find . -exec ./is_dir.py {} \; -o -print
Ele listará tudo o que não é um diretório. Supondo que is_dir.py
seja executável ( chmod +x is_dir.py
) e contenha algo como:
#!/usr/bin/env python
import sys
import os
if os.path.isdir(sys.argv[1]):
sys.exit(0)
sys.exit(1)
E se is_dir.py
gerar uma saída própria, você pode fazer:
rm -f nondir.lst
find . -exec ./is_dir.py {} \; -o -exec echo {} >> nondir.lst \;
para que seu outoput não seja misturado com a lista de nomes para os quais is_dir.py
falha.