Al momento sul mio disco locale ho 88 file .dmg , tre dei quali sono crittografati. Prima di eseguire la riga di comando qui sotto non sapevo quanti file .dmg crittografati avessi e se ce ne fossero, dove fossero. Quindi, sebbene la seguente riga di comando possa apparire contorta, dovrebbe funzionare come pubblicizzato.
Apri Terminale e copia e incolla l'intera riga di comando sottostante, così com'è, nel Terminale, quindi premi Invio .
mdfind '(kMDItemFSName=*.dmg)' | while IFS= read -r line; do printf "$line " & hdiutil isencrypted "$line"; done > dmg_file_list; grep ': YES' dmg_file_list > encrypted_dmg_file_list; clear; cat encrypted_dmg_file_list
Questo creerà due file, dmg_file_list e encrypted_dmg_file_list , e l'uscita il contenuto di quest'ultimo al terminale. I file possono anche essere aperti in un editor di testo.
I file conterranno il percorso completo dei file .dmg seguito da uno spazio e crittografato: NO o crittografato: SÌ nel file dmg_file_list e solo il percorso completo dei file .dmg seguito da uno spazio e crittografato: SÌ in il file crittografato_dmg_file_list .
È quindi possibile eliminare manualmente i due file creati dal comando al termine.
Nota: una volta eseguita la riga di comando, potrebbe essere necessario attendere qualche istante per elaborare e inviare i contenuti del file crittografato_dmg_file_list al Terminale. Dipenderà da quanti file .dmg ci sono.
Ecco la riga di comando completa mostrata con la continuazione della riga in modo da assicurarti di copiare e incollare l'intera riga. (Puoi effettivamente copiare e incollare la riga di comando anche in questo formato.)
mdfind '(kMDItemFSName=*.dmg)' | while IFS= read -r line; \
do printf "$line " & hdiutil isencrypted "$line"; \
done > dmg_file_list; grep ': YES' dmg_file_list > encrypted_dmg_file_list; \
clear; cat encrypted_dmg_file_list
.dmg
file crittografati , ad esempio l'utilizzols -l@
potrebbe indicare checom.apple.metadata:kMDItemDownloadedDate
non esiste uncom.apple.metadata:kMDItemEncrypted
. Puoi vedere gli attributi dei metadati di un file usandomdls
. Quindi l'utilizzohdiutil imageinfo
è probabilmente l'unico modo per ottenere direttamente dal file stesso. Potresti copiarlo e reindirizzare l'output dihdiutil imageinfo
agrep
, ecc. Ed elaborarlo ulteriormente in modo che l'output finale possa essere un elenco di file crittografati, ecc. Tutto dipende da ciò che stai cercando di realizzare all'inizio.