Eu uso o seguinte em bash
, mantendo a mesma abordagem (usando lipo
):
time find ${PATH//:/ } /Applications /Developer /Library /System ~/Applications -type f -exec lipo -info '{}' ';' 2>/dev/null | grep -E "(x86_64|i.86|pent)" | tee binaries.txt | wc -l
Ele criará um arquivo, binaries.txt
com a lista de resultados, e imprimirá o número de resultados, assim como os resultados time
, na saída padrão.
Reduzi a expressão man 3 arch
based grep
, removi a entrada i860
e usei $PATH
em vez de uma lista codificada de locais binários Unix. Também removi o -perm
primary de find
, pois é uma heurística que pode perder os binários apenas executáveis para usuários específicos.