.DS_Store ve __MACOSX olmadan sıkıştır


25

Mac OS X'in sağ tıklama menüsüyle bir klasörü veya dosyayı sıkıştırdığımda, arşivlenen dosya .DS_Store ve __MACOSX klasörlerini içerir . Arşivlenen dosyayı çevrimiçi olarak indirmek için paylaştığım için, Windows kullanıcıları yanlışlıkla __MACOSX klasöründe dosyayı aramaya çalışıyor .

Daha temiz bir arşiv seçeneğim olmalı. Ben dahil etmek istemiyorum .DS_Store ve __MACOSX klasörünü ancak arşiv dosyası içine sadece dosya veya klasörü.

Bulduğum tek şey CleanArchiver ama GUI uygulaması. Gerçekten zaman alıyor ve sıkıştırılacak çok fazla dosyam var. Mümkünse bağlam menüsüne göre bir çözüm arıyorum.

Temiz sıkıştırma için önerebileceğiniz herhangi bir çözüm var mı?

Yanıtlar:


33

Terminal'deki zip komutunu, dosyaları .DS_Store , __MACOSX ve diğer. * Dosyaları olmadan sıkıştırmak için kullanabilirsiniz .

Terminal'i açın (spot ışığında terminal arayın)
cd komutunu kullanarak sıkıştırmak istediğiniz klasöre gidin Bunu
yapıştırınzip -r dir.zip . -x ".*" -x "__MACOSX"

Örnek: Masaüstünüzde sıkıştırılacak şeyler içeren Klasör adında bir klasörünüz olduğunu varsayalım.
Terminali açın ve aşağıdaki komutları yazın:
cd Desktop/Folder
zip -r dir.zip . -x ".*" -x "__MACOSX"

Artık masaüstünüzdeki Klasör klasöründe __MACOSX ve. * Dosyaları olmadan dir.zip adlı bir dosyanız var .


1
+1 Bunu bir otomator servisine sarabilir misiniz?
fd0

4
Teknik olarak konuşursak, zipzip dosyasını oluşturmak için kullanırsanız , "__MACOSX /" ilk etapta oluşturulmaz, bu yüzden gerçekten ihtiyacınız olan tek şey zip -r dir.zip .. Ancak, "__MACOSX /" bir şekilde orada gizlenirse, çözümünüz bundan kurtulacaktır.
Edward Falk

2
Ayrıca, konsolda yazarak zip dosyanızın __MACOSX olmadığını kolayca doğrulayabilirsinizzipinfo dir.zip
Fostah

13

Ekstra bilgi ...

Benim anlayışım __MACOSX, normalde bir zip dosyasına kaydedilemeyen genişletilmiş öznitelikler gibi meta verileri tutmak için Mac GUI araçları tarafından yapay olarak oluşturulan bir alt dizindir.

Zip dosyasını açmak için Mac GUI araçlarını kullanırsanız, araçlar __MACOSX ile ne yapılacağını bilecek ve dizin aslında paketlenmeyecektir.

Sorunlar, .zip dosyanızı Windows veya Linux kullanıcılarına gönderdiğinizde veya unzippaketlerini açmak için genel amaçlı programı kullandığınızda oluşur. Bu araçlar __MACOSX'un özel olduğunu bilmeyecek ve paketini açacaktır.

En basit seçenek, zipMac yerleşik aracı yerine zip dosyanızı paketlemek için kullanmaktır . zip__MACOSX oluşturmaz ve sorununuz çözülür. (İşlemdeki meta verileri kaybedeceksiniz, ancak muhtemelen yine de istemediniz.)

zip -r dir.zip .

Çok geçse ve __MACOSX ile zaten bir zip dosyanız varsa, yine de şu yöntemle kaldırabilirsiniz:

zip -d foo.zip __MACOSX .DS_Store

Son olarak, kabul edilen cevap en iyisidir çünkü eğer herhangi bir nedenden dolayı __MACOSX gerçekten dizininizde mevcutsa (örneğin daha önce unzipoluşturmak için kullandığınız için), -x seçeneği paketlenmesini önleyecektir.



2

Şimdiye kadar kullandığım tek şey BetterZip [20 $]

Bir GUI uygulamasıdır, ancak .DS_Store & __MACOSX gibi Mac'e özgü dosyaları atlamak da dahil olmak üzere varsayılan ayarlarınızla ön ayarları çalıştırabileceğiniz Applescript & Services desteğine sahiptir. Muhtemelen bir göz atmaya değer.

BetterZip Yardım'dan ...

BetterZip iki hizmeti destekler: biri çıkartmak ve diğeri arşiv oluşturmak için. BetterZip hizmetlerinin hazır ayarlarla ne yapacağını yapılandırabilirsiniz.

Bir hizmeti kullanmak için, Finder'da bir veya daha fazla dosya veya klasörü seçin ve Finder> Hizmetler menüsünden BetterZip ile Sıkıştır veya BetterZip ile Çıkart veya içerik menüsündeki Servisler alt menüsünde seçin.

BetterZip servisleri için klavye kısayollarını ayarlayabilirsiniz; örneğin, sıkıştırma için ^ andC ve ayıklama için ^ ⌥⌘E. Servis kısayollarını ayarlamak için Sistem Tercihleri> Klavye> Klavye Kısayolları'na gidin ve soldaki tabloda Servisler'i seçin. Sağ tabloda, Dosyalar ve Klasörler'e gidin, BetterZip ile Sıkıştır'ı seçin ve ↩ tuşuna basın. Düzenlenebilir bir metin alanı görünecektir. İstediğiniz kısayola basın.

Kaydet ön ayarlarımdan biri ...

resim açıklamasını buraya girin


Bu, Setapp kullanıcıları için iyi bir GUI seçeneğidir.
Leo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.