Fájlok kizárása a ZIP-archívumból
Tartalomjegyzék:
A legegyszerűbb módja annak, hogy bizonyos fájlokat vagy egyező fájlok egy csoportját kizárja a zip archívumból, ha kihagyja a Mac OS X barátságos felhasználói felületébe épített egyszerű tömörítő segédprogramot, és átváltja a parancssorba, ahol a erőteljes zip parancs található. Ez millió és egy okból hasznos, de ennek a bejegyzésnek az elsődleges motivációja a .DS_Store fájlokhoz kapcsolódik, amelyek a Mac-en létrehozott zip archívumokkal együtt vannak csomagolva, csak azért, hogy összezavarjanak egy másik gépet, amely kibontja a fájlt, akár egy másikon van. Mac, Windows PC vagy Linux.Ez alapértelmezés szerint a barátságos zip eszközzel és a parancssori zip segédprogrammal is megtörténik, és ennek az az oka, hogy a tömörítő eszközök alapértelmezett viselkedése a rejtett fájlok felvétele, függetlenül attól, hogy megjelennek-e vagy sem. Ez nem feltétlenül rossz dolog, és sok esetben hasznosnak tekinthető, de ha nem szeretné, hogy ezek, vagy bármilyen más fájl megjelenjen az archívumban, akkor olvasson tovább.
Fájlok kizárása a ZIP-archívumból
A zip archívum létrehozásakor a fájlkizárás alapjai az -x jelző köré összpontosulnak, amely az adott névnek vagy mintának megfelelő fájlok kizárására szolgál az archívumból. A legalapvetőbben így fog kinézni:
"zip archívum.zip fájlok -x ExcludeMe"
Ez azt jelenti, hogy egyetlen fájlt is kizárhat, mondjuk a „Nothanks.jpg” nevet viseli.
"zip archívum.zip images/ -x Nothanks.jpg"
Vegyünk néhány konkrét példát, ahol ez hasznos.
A .DS_Store fájlok kizárása a ZIP-archívumokból
Ez megakadályozza, hogy a tipikusan láthatatlan Mac-metaadat .DS_Store fájlok bekerüljenek egy zip archívumba, amelyek alapértelmezés szerint a csomagban vannak:
"zip -r archívumnév.zip archívumkönyvtár -x .DS_Store"
Ha azonban a könyvtár tartalmaz alkönyvtárakat, akkor a parancs egy másik változatát kell használnia a ds_store fájlok kizárására az alkönyvtárakból:
"zip -r archívum.zip könyvtár -x /\.DS_Store"
Megjegyzés: a parancs megfelelő működéséhez nem minden parancsértelmező igényel idézőjeleket, de a bash shellben (a Mac OS X alapértelmezése) az idézőjeleket kell használnia a helyettesítő karakterekkel és mintákkal történő kizáráshoz.
Konkrét fájltípusok kizárása a ZIP-archívumból
A helyettesítő karakterekkel egy bizonyos típusú fájlt is kizárhat, ha a kiterjesztésre összpontosít. Ez a parancs például egy teljes könyvtárat tömörít a .jpg fájlok nélkül:
"zip -r archívum.zip könyvtár -x .jpg"
Ez módosítható bármely adott fájlkiterjesztéshez vagy a fájlnévben szereplő mintához.
A .git vagy .svn könyvtár kizárása a ZIP-archívumból
"Cip egy könyvtárat, mínusz .git és annak tartalma: zip -r zipdir.zip directorytozip -x .git "
Mappa tömörítése az .svn könyvtár nélkül: zip -r zipped.zip könyvtár -x .svn "
Az összes rejtett fájl kizárása a ZIP-archívumból
Mivel minták és helyettesítő karakterek használhatók, kizárhat minden olyan láthatatlan fájlt és mappát vagy az összes olyan láthatatlan fájlt és mappát, amelyet pont előtaggal hoznak létre, legyen szó könyvtárról, például .svn, vagy egyedi fájlról, például .bash_profile vagy .htaccess.
zip -r archívumnév.zip directorytozip -x ."
Vagy az összes láthatatlan fájl kizárásához az összes alkönyvtárból:
"zip -r archívum.zip könyvtár -x /\."
Üdvözlöm a Macworld Fórumok kommentelőjét a fájlok alkönyvtárakból való kizárásának pontos szintaxisáért.
Végső soron ez csak egy újabb ok arra, hogy a hatékony felhasználók a terminálra ugorjanak archívumok létrehozása céljából. Az olyan hatékony funkciókkal, mint a helyettesítő karakterek támogatása, a kizárás és a zip-ek opcionális jelszavas védelme, csak még teljesebb funkcionalitású, és mivel a Mac számítógépen egyébként is megtalálható, nem kell másik alkalmazást letöltenie a speciális funkciók támogatásához.
És technikailag, ha elhatározta, hogy a felhasználói felületen marad, használhatja a Finder és a Spotlight keresési operátorait a mappa tartalmának szűkítésére Mac OS X rendszerben, mielőtt archívumot hozna létre, vagy egyszerűen válassza ki az összeset és manuálisan. Command+Kattintson minden fájlra, ha nem akarja belefoglalni, de ez nem igazán hatékony a nagy archiválási műveleteknél.Így a terminál könnyebben nyer, és annak ellenére, hogy a parancssor köré összpontosul, az alapok elsajátítása után valóban nem bonyolult.