2012-08-27 25 views
7

के बिना टैर-फ़ाइल बनाएं मुझे एकाधिक फ़ाइलों को एक टैर-फ़ाइल में संपीड़ित करना होगा। जैसा कि मुझे कई अलग-अलग फ़ोल्डर्स में कई फाइलों के लिए दोहराना है, मैंने एक शेल स्क्रिप्ट लिखी और इसे मूल निर्देशिका से शुरू किया। खोल स्क्रिप्ट निम्नलिखित की तरह कई पंक्तियों में शामिल हैं:फ़ोल्डर strucure

tar -cf a/b/c/tarfile.tar a/b/c/* 

यह निर्दिष्ट फ़ोल्डर में एक टार फ़ाइल बनाता है लेकिन अंदर टार फ़ाइल एक/बी/सी/अभी भी विद्यमान है की फ़ोल्डर संरचना।

मुझे क्या चाहिए कि सी/में सभी फाइलें tfile.tar में रखी गई हैं फ़ोल्डर संरचना ए/बी/सी/के बिना। क्या यह संभव है?

उत्तर

14

tar -cf a/b/c/tarfile.tar -C a/b/c . निर्देशिका a/b/c में बदल जाएगा और पूरी निर्देशिका में पढ़ा (. - आप विशिष्ट फ़ाइलों के रूप में अच्छी तरह से निर्दिष्ट कर सकते हैं, लेकिन एक वाइल्डकार्ड आप क्या उम्मीद कर रहे हैं ऐसा नहीं होगा)। विभिन्न स्थानों से अतिरिक्त फ़ाइलों को संसाधित करने के लिए -C <directory> <filelist> पैटर्न को दोहराया जा सकता है।

आपकी मूल उदाहरण cd a/b/c; tar cf ../../../tarfile.tar * होने की एक और संभावना है, लेकिन इससे आपको विभिन्न स्थानों से कई फाइलें खींचने की संभावना नहीं मिलती है (बेशक आप अभी भी -C का उपयोग कर सकते हैं, लेकिन सापेक्ष पथों को तदनुसार समायोजित करना होगा।

+0

धन्यवाद twalberg, मैंने आपकी दूसरी सलाह की कोशिश की और यह काम किया। (सीडी पहले सख्त में और फिर टैर-फाइल बनाएं) – ala