Comprimi senza .DS_Store e __MACOSX


24

Quando comprimo una cartella o un file facendo clic con il tasto destro del menu 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 tentano erroneamente di cercare il file nella cartella __MACOSX .

Devo avere un'opzione di archiviazione più pulita. Non voglio includere le cartelle .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 consigliare per una compressione pulita?

Risposte:


33

È possibile utilizzare il comando zip in Terminal per comprimere i file senza .DS_Store , __MACOSX e altri file. *.

Apri Terminale (cerca il terminale in primo piano)
Passa alla cartella che vuoi comprimere usando il comando cd
Incolla questozip -r dir.zip . -x ".*" -x "__MACOSX"

Esempio: supponiamo di avere una cartella sul desktop denominata Cartella con elementi 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 __MACOSX e file. * Nella cartella Cartella sul desktop.


1
+1 Puoi avvolgerlo in un servizio di automazione?
f0,

4
Tecnicamente parlando, se si utilizza zipper creare il file zip, "__MACOSX /" non verrà creato in primo luogo, quindi tutto ciò di cui hai veramente bisogno è zip -r dir.zip .. Tuttavia, se "__MACOSX /" in qualche modo si intrufola lì, la tua soluzione si sbarazzerà di esso.
Edward Falk,

2
Inoltre puoi facilmente verificare che il tuo file zip non contenga __MACOSX digitando nella consolezipinfo dir.zip
Fostah

13

Solo alcune informazioni extra ...

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

Se usi gli strumenti della GUI del 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 utilizza semplicemente il unzipprogramma generico per decomprimerli. Questi strumenti non sapranno che __MACOSX è speciale e lo decomprimeranno.

L'opzione più semplice è utilizzare zipper comprimere il file zip anziché lo strumento integrato per Mac. zipnon creerà __MACOSX e il tuo problema è risolto. (Perderai i metadati nel processo, ma probabilmente non li volevi comunque.)

zip -r dir.zip .

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

zip -d foo.zip __MACOSX .DS_Store

Infine, la risposta accettata è la migliore perché se per qualche motivo __MACOSX esiste effettivamente nella tua directory (es. Perché in precedenza l'hai usata unzipper crearla), l'opzione -x eviterà che venga impacchettata.


4

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

inserisci qui la descrizione dell'immagine


2

Solo uno che abbia mai usato è BetterZip [$ 20]

È un'app GUI, ma ha il supporto di Applescript & Services, con cui è 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.

Dall'aiuto di BetterZip ...

BetterZip supporta due servizi: uno per l'estrazione e uno per la creazione di archivi. Puoi configurare cosa faranno i servizi BetterZip con i preset.

Per utilizzare un servizio, selezionare uno o più file o cartelle nel Finder e selezionare Comprimi con BetterZip o Estrai con BetterZip dal menu Finder> Servizi o dal sottomenu Servizi nel menu contestuale.

Puoi anche impostare scorciatoie da tastiera per i servizi BetterZip, ad esempio ^ ^C per la compressione e ^ ⌥⌘E per l'estrazione. Per impostare le scorciatoie per i servizi, vai su Preferenze di Sistema> Tastiera> Scorciatoie da tastiera e scegli Servizi nella tabella a sinistra. Nella tabella a destra, scorrere fino a File e cartelle, selezionare Comprimi con BetterZip e premere ↩. Apparirà un campo di testo modificabile. Premere il collegamento desiderato.

Uno dei miei preset di salvataggio ...

inserisci qui la descrizione dell'immagine


Questa è una buona opzione GUI per gli utenti Setapp.
Leo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.