একটি জিপ সংরক্ষণাগার তৈরি করার সময় ফাইল বাদ দেওয়ার মূল বিষয়গুলি -x
পতাকাটির চারদিকে কেন্দ্রীভূত হয় , যা নির্দিষ্ট নাম বা প্যাটার্নের সাথে মেলে এমন সংরক্ষণাগার থেকে ফাইলগুলি বাদ দিতে ব্যবহৃত হয়। এটি একেবারে প্রাথমিক, এটি দেখতে এরকম দেখাবে:
zip archive.zip files -x "ExcludeMe"
এর অর্থ আপনি একটি একক ফাইল বাদ দিতে পারেন, বলুন এর নাম দেওয়া হয়েছে "নোটহানস.জপিজি"
zip archive.zip images/ -x "Nothanks.jpg"
আসুন কয়েকটি কার্যকর উদাহরণ কভার করুন যেখানে এটি দরকারী।
জিপ সংরক্ষণাগার থেকে ডিডিএসএসস্টোর ফাইলগুলি বাদ দিন
এটি সাধারণত অদৃশ্য ম্যাক মেটাডেটা .DS_Store
ফাইলগুলিকে জিপ সংরক্ষণাগারে অন্তর্ভুক্ত করা থেকে বিরত রাখে, যা ডিফল্টরূপে বান্ডিল হয়:
zip -r archivename.zip archivedirectory -x "*.DS_Store"
তবে ডিরেক্টরিতে যদি উপ-ডিরেক্টরি অন্তর্ভুক্ত থাকে তবে আপনি সাব-ডিরেক্টরি থেকে ds_store ফাইলগুলি বাদ দিতে সেই আদেশের আরও একটি প্রকরণ ব্যবহার করতে চান:
zip -r archive.zip directory -x "*/\.DS_Store"
দ্রষ্টব্য: সমস্ত শেলগুলি সঠিকভাবে কাজ করার জন্য এই কমান্ডের জন্য উদ্ধৃতিগুলির প্রয়োজন নেই, তবে ব্যাশ শেলের (ওএস এক্সের জন্য ডিফল্ট) ওয়াইল্ডকার্ড এবং নিদর্শনগুলি বাদ দিয়ে আপনাকে উদ্ধৃতিগুলি ব্যবহার করতে হবে।
একটি জিপ সংরক্ষণাগার থেকে নির্দিষ্ট ফাইল প্রকার বাদ দিন
ওয়াইল্ডকার্ডগুলির সাহায্যে আপনি এক্সটেনশনে ফোকাস করে নির্দিষ্ট ধরণের সমস্ত ফাইলও বাদ দিতে পারেন। উদাহরণস্বরূপ, এই কমান্ডটি একটি সম্পূর্ণ ডিরেক্টরি জিপ করবে, কোনও .jpg
ফাইল বিয়োগ করবে :
zip -r archive.zip directory -x "*.jpg"
এটি কোনও ফাইলের নামের সাথে মিলে যাওয়া কোনও নির্দিষ্ট ফাইল এক্সটেনশন বা প্যাটার্নের জন্য পরিবর্তিত হতে পারে।
একটি জিপ সংরক্ষণাগার থেকে .git বা .svn ডিরেক্টরি বাদ দিন
একটি ডিরেক্টরি জিপ করুন, বিয়োগ .git
এবং এর সামগ্রীগুলি:
zip -r zipdir.zip directorytozip -x "*.git*"
.svn
ডিরেক্টরিটি অন্তর্ভুক্ত না করে একটি ফোল্ডার জিপ করুন :
zip -r zipped.zip directory -x "*.svn*"
একটি জিপ সংরক্ষণাগার থেকে সমস্ত লুকানো ফাইল বাদ দিন
যেহেতু নিদর্শন এবং ওয়াইল্ডকার্ড ব্যবহার করা যেতে পারে তবে আপনি যেকোনো বা সব অদৃশ্য এমন ফাইল এবং ফোল্ডারগুলি একটি নির্দিষ্ট সময়ের সঙ্গে পূর্বে সমাধান হচ্ছে দ্বারা তা তৈরি করা হয় অগ্রাহ্য করতে পারে, এটা মত একটি ডিরেক্টরি কিনা .svn
বা মত একজন ব্যক্তি ফাইল .bash_profile
বা .htaccess
।
zip -r archivename.zip directorytozip -x "*.*"
বা সমস্ত উপ-ডিরেক্টরি থেকে সমস্ত অদৃশ্য ফাইলগুলি বাদ দিতে:
zip -r archive.zip directory -x "*/\.*"
find community-chess/ -path '*/.*' -prune -o -type f -print | zip ~/community-chess.zip -@
) কমান্ডটি প্রত্যাশার চেয়ে দীর্ঘ, তবে এটি ঠিক কাজ করে। উপ-ডিরেক্টরিগুলিও অন্তর্ভুক্ত রয়েছে, সুতরাং +1 এবং একটি স্বীকৃত উত্তর :-)