Open consulta lo stesso database del finder per abbinare un tipo di file a potenziali app. Il nome di questo database è il database Launch Serices ed è abbastanza grande e ingombrante se si esegue il dump di tutto.
lsregister -dump | wc -l
Ho 533.000 righe di testo nel mio database, quindi potrebbe essere necessario restringere quello che stai cercando piuttosto che consumare l'intera manichetta antincendio di dati su ogni possibile tipo di file e ogni possibile applicazione. Se non si dispone di lsregister nel percorso, trovarlo qui e facoltativamente fare un collegamento simbol ad esso in / usr / local / bin
mdfind -name lsregister
ln -s $(mdfind -name lsregister) /usr/local/bin
Ma, se vuoi l'intera enchilada, puoi scaricare il database e scavare nei gloriosi dettagli tecnici.
Facciamo ancora due passi lungo il percorso del coniglio. Supponi di avere un filmato sul desktop. Dovresti usare lo strumento di elencazione dei metadati per scaricare tutti gli attributi di quel file (61 voci per un film che ho) e poi devi analizzare il tipo di contenuto per abbinarlo al dump del database dai servizi di lancio.
mdls ~/Desktop/video.mov | wc -l
E per scegliere solo il tipo di contenuto più specifico (dato che un file ha un albero di potenziali tipi di contenuto - potresti doverli considerare anche nella tua ricerca - ma dal momento che stiamo mantenendo questo semplice - assumiamo che il tipo finale è ciò che corrisponde al tuo caso)
mdls ~/Desktop/video.mov | grep -w kMDItemContentType
Quindi, per me, quel film è classificato dall'indicizzazione spotlight come file di tipo com.apple.quicktime-movie e nel dump di servizi di avvio - una delle app che afferma di aprire quel file è / Applicazioni / QuickTime Player.app
Script di questo sarà un bel esercizio, ma i dati sono lì per te da esaminare e giocare. Buon divertimento!
Questa altra domanda ha alcuni dettagli più impressionanti e uno strumento chiamato link che potrebbe essere lo strumento che cerchi. Ancora meglio, è open source, quindi puoi vedere come funziona.