query mdfind su kMDItemFSTypeCode non riesce a trovare alcuni codici tipo

2

Ho appena effettuato l'upgrade a un nuovo MacBook con Lion, e avendo scoperto che alcune delle mie vecchie app non possono venire con, sto setacciando i miei file per alcuni tipi che dovranno essere convertiti in formati a prova di futuro. Molti di questi file tornano a System 7 e alcuni non hanno mai avuto estensioni di file (d'oh), quindi ho pensato che il modo migliore per trovarli sarebbe quello di cercare i codici di tipo / tipo vecchio stile.

Ho usato il comando mdfind con successo per la maggior parte dei codici di caratteri, ma ho scoperto che i suoi risultati non sono sempre coerenti. Ecco un esempio di cosa non funziona quando provo a trovare i file 3DMF.

Per prima cosa eseguo mdls per verificare il codice del tipo:

$ mdls garage.3DMF

kMDItemContentCreationDate     = 2002-06-24 02:05:20 +0000
...
kMDItemFSCreatorCode           = "OP40"
...
kMDItemFSTypeCode              = "3DMF"
kMDItemKind                    = "3dmf"
...

"Ah, quindi è '3DMF'", penso. Così ora eseguo mdfind nella stessa directory per verificare che funzioni:

mdfind -onlyin . "kMDItemFSTypeCode == '3DMF'"

Ma non viene restituito nulla! Infatti, non viene restituito nulla quando lo eseguo sull'intero disco, anche se ho file 3DMF sparsi dappertutto.

L'esecuzione di una query generale (mdfind 3DMF) sembra svolgere il lavoro, ma è eccessiva e restituisce molti falsi positivi. C'è qualcosa di ovvio che sto sbagliando qui?

    
posta smashuu 03.09.2012 - 18:51
fonte

1 risposta

1

Devi tradurre il codice del tipo stringa in un codice di tipo effettivo (un numero).

Per il tuo '3DMF' , quel numero è 860114246. Pertanto, funzionerà:

mdfind kMDItemFSTypeCode == 860114246
    
risposta data 26.04.2017 - 19:23
fonte

Leggi altre domande sui tag