কিভাবে একটি জিপ আর্কাইভ থেকে ফাইল বাদ দিতে হয়
সুচিপত্র:
জিপ আর্কাইভ থেকে অনেক নির্দিষ্ট ফাইল বা মিলে যাওয়া ফাইলের একটি গ্রুপ বাদ দেওয়ার সবচেয়ে সহজ উপায় হল ম্যাক ওএস এক্স-এর বন্ধুত্বপূর্ণ UI-তে তৈরি সহজ জিপিং ইউটিলিটি বাদ দেওয়া এবং কমান্ড লাইনে চলে যাওয়া, যেখানে শক্তিশালী জিপ কমান্ড থাকে। এটি একটি মিলিয়ন এবং একটি কারণে কার্যকর, তবে এই পোস্টের প্রাথমিক প্রেরণা .DS_Store ফাইলগুলির সাথে সম্পর্কিত যা একটি ম্যাকে তৈরি জিপ সংরক্ষণাগারগুলির সাথে বান্ডিল করা হয়, শুধুমাত্র অন্য একটি মেশিনকে বিশৃঙ্খল করার জন্য যা ফাইলটিকে আনজিপ করে, তা অন্যটিতে হোক না কেন ম্যাক, উইন্ডোজ পিসি, বা লিনাক্স।এটি ডিফল্টভাবে বন্ধুত্বপূর্ণ জিপ টুল এবং কমান্ড লাইন জিপ ইউটিলিটি উভয়ের সাথেই ঘটে এবং এর কারণ জিপিং সরঞ্জামগুলির ডিফল্ট আচরণ হল লুকানো ফাইলগুলি দেখানো হোক বা না হোক তা অন্তর্ভুক্ত করা। এটি অগত্যা একটি খারাপ জিনিস নয় এবং অনেক ক্ষেত্রে এটি দরকারী বলে বিবেচিত হবে, তবে আপনি যদি সেগুলি না চান, বা সেই বিষয়ে অন্য কোনও ফাইল, আপনার সংরক্ষণাগারগুলিতে প্রদর্শিত হবে, তাহলে পড়ুন৷
কিভাবে জিপ আর্কাইভ থেকে ফাইল বাদ দেওয়া যায়
একটি জিপ সংরক্ষণাগার তৈরি করার সময় ফাইল বাদ দেওয়ার মূল বিষয়গুলি -x পতাকার চারপাশে কেন্দ্রীভূত হয়, যা একটি নির্দিষ্ট নাম বা প্যাটার্নের সাথে মেলে সংরক্ষণাগার থেকে ফাইলগুলি বাদ দিতে ব্যবহৃত হয়৷ এটি সবচেয়ে মৌলিক, এটি এই মত দেখাবে:
"zip archive.zip ফাইল -x ExcludeMe"
মানে আপনি একটি ফাইল বাদ দিতে পারেন, বলুন এটির নাম "Nothanks.jpg"
"zip archive.zip images/ -x Nothanks.jpg"
আসুন কয়েকটি নির্দিষ্ট উদাহরণ কভার করি যেখানে এটি কার্যকর।
বাদ দিন .DS_Store ফাইল জিপ আর্কাইভ থেকে
এটি সাধারণত অদৃশ্য ম্যাক মেটাডেটা প্রতিরোধ করবে। DS_Store ফাইলগুলিকে একটি জিপ সংরক্ষণাগারে অন্তর্ভুক্ত করা থেকে বিরত রাখবে, যা ডিফল্টরূপে বান্ডিল করা হয়:
"zip -r archivename.zip archivedirectory -x .DS_Store"
যদিও ডাইরেক্টরিটিতে সাবডিরেক্টরিগুলি অন্তর্ভুক্ত থাকে, তবে আপনি সাবডিরেক্টরিগুলি থেকে ds_store ফাইলগুলিকেও বাদ দিতে সেই কমান্ডের অন্য একটি পরিবর্তন ব্যবহার করতে চাইবেন:
"zip -r archive.zip ডিরেক্টরি -x /\.DS_Store"
দ্রষ্টব্য: সঠিকভাবে কাজ করার জন্য সমস্ত শেল এই কমান্ডের জন্য উদ্ধৃতিগুলির প্রয়োজন হয় না, তবে ব্যাশ শেল (ম্যাক ওএস এক্স-এর জন্য ডিফল্ট) আপনাকে ওয়াইল্ডকার্ড এবং প্যাটার্নগুলি বাদ দেওয়ার জন্য উদ্ধৃতিগুলি ব্যবহার করতে হবে৷
একটি জিপ আর্কাইভ থেকে নির্দিষ্ট ফাইলের ধরন বাদ দিন
ওয়াইল্ডকার্ডের সাহায্যে, আপনি এক্সটেনশনে ফোকাস করে একটি নির্দিষ্ট ধরণের সমস্ত ফাইল বাদ দিতে পারেন। উদাহরণস্বরূপ, এই কমান্ডটি একটি সম্পূর্ণ ডিরেক্টরিকে জিপ করবে, যেকোনো .jpg ফাইলকে বিয়োগ করে:
"zip -r archive.zip ডিরেক্টরি -x .jpg"
যেকোন নির্দিষ্ট ফাইল এক্সটেনশন বা ফাইলের নামের সাথে মিলে যাওয়া প্যাটার্নের জন্য এটি পরিবর্তন করা যেতে পারে।
জিপ আর্কাইভ থেকে .git বা .svn ডিরেক্টরি বাদ দিন
"একটি ডিরেক্টরি জিপ করুন, বিয়োগ .git এবং এর বিষয়বস্তু: zip -r zipdir.zip Directorytozip -x .git "
.svn ডিরেক্টরি অন্তর্ভুক্ত না করে একটি ফোল্ডার জিপ করুন: zip -r zipped.zip ডিরেক্টরি -x .svn "
একটি জিপ আর্কাইভ থেকে সমস্ত লুকানো ফাইল বাদ দিন
যেহেতু প্যাটার্ন এবং ওয়াইল্ডকার্ড ব্যবহার করা যেতে পারে, আপনি যেকোন বা সমস্ত অদৃশ্য ফাইল এবং ফোল্ডারগুলিকেও বাদ দিতে পারেন যা একটি পিরিয়ডের সাথে প্রিফিক্স করে তৈরি করা হয়, তা সে .svn-এর মতো একটি ডিরেক্টরি হোক বা একটি পৃথক ফাইল .bash_profile বা .htaccess.
zip -r archivename.zip Directorytozip -x ."
অথবা সকল সাবডিরেক্টরি থেকে অদৃশ্য ফাইল বাদ দিতে:
"zip -r archive.zip ডিরেক্টরি -x /\."
সাবডিরেক্টরি থেকে সেই ফাইলগুলিকে বাদ দেওয়ার জন্য ম্যাকওয়ার্ল্ড ফোরামে একজন মন্তব্যকারীকে অভিনন্দন৷
অবশেষে, আর্কাইভ তৈরি করার জন্য পাওয়ার ব্যবহারকারীদের টার্মিনালে ঝাঁপ দেওয়ার জন্য এটি আরেকটি কারণ। ওয়াইল্ডকার্ড সমর্থন, বর্জন, এবং জিপগুলির ঐচ্ছিক পাসওয়ার্ড সুরক্ষার মতো শক্তিশালী বৈশিষ্ট্যগুলির সাথে, এটি আরও সম্পূর্ণ বৈশিষ্ট্যযুক্ত, এবং যেহেতু এটি সবই ম্যাকে অন্তর্ভুক্ত করা হয়েছে যাইহোক আপনাকে উন্নত বৈশিষ্ট্যগুলিকে সমর্থন করার জন্য অন্য কোনও অ্যাপ ডাউনলোড করতে হবে না৷
এবং হ্যাঁ, টেকনিক্যালি যদি আপনি UI এ থাকার জন্য দৃঢ়প্রতিজ্ঞ হন তবে আপনি একটি সংরক্ষণাগার তৈরি করার আগে Mac OS X-এ ফোল্ডারের বিষয়বস্তু সংকুচিত করতে ফাইন্ডার এবং স্পটলাইট অনুসন্ধান অপারেটর ব্যবহার করতে পারেন, অথবা শুধুমাত্র সমস্ত নির্বাচন করুন এবং ম্যানুয়ালি করুন প্রতিটি ফাইলকে অন্তর্ভুক্ত না করতে Command+ক্লিক করুন, কিন্তু বড় আর্কাইভিং অপারেশনের জন্য এটি সত্যিই কার্যকর নয়।এইভাবে, টার্মিনালটি স্বাচ্ছন্দ্যের জন্য জয়লাভ করে, এবং কমান্ড লাইনের চারপাশে কেন্দ্রীভূত হওয়া সত্ত্বেও, আপনি একবার বেসিকগুলি শিখলে এটি সত্যিই জটিল নয়৷