Comprime senza .DS_Store e __MACOSX

11

Quando comprimo una cartella o un file tramite il menu di scelta rapida di Mac OS X, il file archiviato contiene le cartelle .DS_Store e __ MACOSX . Poiché condivido il file archiviato online per il download, gli utenti di Windows cercano erroneamente di cercare il file nella cartella __ MACOSX .

Ho bisogno di avere un'opzione di archivio più pulita. Non voglio includere la cartella .DS_Store e __ MACOSX , ma solo il file o la cartella nel file di archivio.

Tutto quello che ho trovato è CleanArchiver ma è un'applicazione GUI. Ci vuole davvero tempo e ho molti file da comprimere. Sto cercando una soluzione dal menu contestuale, se possibile.

C'è qualche soluzione che puoi raccomandare per la compressione pulita?

    
posta John Bernard 25.05.2016 - 18:32
fonte

4 risposte

18

Puoi usare il comando zip in Terminale per comprimere i file senza i file .DS_Store , __ MACOSX e altri. *.

Apri terminale (cerca il terminale sotto riflettori)
Passare alla cartella che si desidera comprimere utilizzando il comando cd
Incolla questo zip -r dir.zip . -x ".*" -x "__MACOSX"

Esempio: supponiamo che tu abbia una cartella sul desktop chiamata Folder con cose da comprimere.
Apri il terminale e scrivi i seguenti comandi:
cd Desktop/Folder
zip -r dir.zip . -x ".*" -x "__MACOSX"

Ora hai un file chiamato dir.zip senza file __ MACOSX e. * nella cartella Cartella sul desktop.

    
risposta data 25.05.2016 - 19:53
fonte
7

Solo alcune informazioni extra ...

La mia comprensione è che __MACOSX è una sottodirectory creata artificialmente dagli strumenti della GUI Mac per contenere metadati come attributi estesi che non possono essere normalmente salvati in un file zip.

Se utilizzi gli strumenti della GUI Mac per decomprimere il file zip, gli strumenti sapranno cosa fare con __MACOSX e la directory non verrà effettivamente decompressa.

I problemi si verificano quando si invia il file .zip a utenti Windows o Linux, o si usa semplicemente il programma unzip per decomprimere. Questi strumenti non sapranno che __MACOSX è speciale e lo spacchetterò.

L'opzione più semplice è usare zip per comprimere il tuo file zip invece dello strumento integrato Mac. zip non creerà __MACOSX e il tuo problema sarà risolto. (Perderete i metadati nel processo, ma probabilmente non lo volete comunque.)

zip -r dir.zip .

Se è troppo tardi e hai già un file zip con __MACOSX, puoi comunque rimuoverlo con:

zip -d foo.zip __MACOSX .DS_Store

Infine, la risposta accettata è la migliore perché se per qualche motivo __MACOSX effettivamente esiste nella tua directory (ad esempio perché in precedenza hai usato unzip per crearlo), l'opzione -x impedisce che venga compresso.

    
risposta data 19.07.2016 - 23:33
fonte
3

Prova Keka . Viene fornito con un'opzione per escludere .DS_Store

    
risposta data 15.12.2016 - 08:34
fonte
1

Ne ho usato solo uno BetterZip [$ 20]

È un'app GUI, ma ha Applescript & Supporto dei servizi, con il quale è possibile eseguire i preset con le impostazioni predefinite, inclusa l'omissione di file specifici per Mac come .DS_Store & __MACOSX. Forse vale la pena dare un'occhiata.

Da BetterZip Help ...

BetterZip supports two services: one for extracting and one for creating archives. You can configure what the BetterZip services will do with presets.

To use a service, select one or more files or folders in the Finder and choose Compress with BetterZip or Extract with BetterZip from the Finder > Services menu or the Services submenu in the contextual menu.

You can even set keyboard shortcuts for the BetterZip services, e.g., ^⌥⌘C for compressing and ^⌥⌘E for extracting. To set shortcuts for services, go to System Preferences > Keyboard > Keyboard Shortcuts and choose Services in the left table. In the right table, scroll to Files and Folders, choose Compress with BetterZip and press ↩. An editable textfield will appear. Press the desired shortcut.

Uno dei miei preset di salvataggio ...

    
risposta data 25.05.2016 - 18:47
fonte

Leggi altre domande sui tag