Para localizar arquivos executáveis chamados java no diretório especificado:
find '/Applications/NetBeans/NetBeans 7.0.app/' -name java -type f -perm -u+x
A saída será um nome de arquivo por linha, por exemplo,
/Applications/NetBeans/NetBeans 7.0.app/Contents/Resources/NetBeans/ExecutableJavaEnv/java
Se você quiser omitir a parte …/NetBeans 7.0.app , primeiro mude para o diretório e execute find no diretório atual ( . ). Ainda haverá um prefixo ./ .
cd '/Applications/NetBeans/NetBeans 7.0.app/'
find . -name java -type f -perm -u+x
Estritamente falando, -perm u+x seleciona todos os arquivos que são executáveis pelo seu proprietário, não todos os arquivos que você pode executar. O GNU find tem uma opção -executable para procurar por arquivos nos quais você tenha permissão de execução, considerando todos os modos de arquivo e ACLs, mas essa opção não está disponível em outros sistemas como o OSX. Na prática, é improvável que isso importe; na verdade, para o seu caso de uso, você pode esquecer completamente as permissões e apenas corresponder a -name java -type f .
-type f seleciona apenas arquivos regulares, não diretórios ou links simbólicos. Se você quiser incluir links simbólicos em arquivos regulares na pesquisa, adicione a opção -L a find (imediatamente após o comando find , antes do nome do diretório a ser pesquisado).