2012-11-18 9 views
10

मैं एक फ़ाइलएक फ़ाइल या एक फ़ाइल प्रकार को छोड़कर 7z साथ निर्देशिका में सब कुछ ज़िप किया जा रहा

7z a -tzip files.zip * 

यह मेरा वर्तमान निर्देशिका में सभी फ़ाइलें ज़िप होगा .. के अलावा सब कुछ ज़िप करना चाहते हैं वहाँ मैं एक तरीका है एक फ़ाइल या एक फ़ाइल प्रकार ज़िप नहीं करने के लिए कह सकते हैं?

उत्तर

18

प्रति 7za कमांड लाइन मदद, यदि आप ऐसा करने -x स्विच का उपयोग करें:

-x[r[-|0]]]{@listfile|!wildcard}: eXclude filenames 

foo.txt आप जोड़ना होगा फ़ाइल निकालने के लिए:

-x!foo.txt 

सब बाहर करने के लिए .html फ़ाइलें (* .html) आप जोड़ना होगा:

-x!*.html 

आप एक से अधिक फ़ाइल नाम बाहर करने के लिए कई -x प्रविष्टियों में जोड़ सकते हैं और/या एक ज़िप कमांड में वाइल्डकार्ड। निम्नलिखित जोड़ना foo.txt और * .html को बाहर निकाल देगा:

-x!foo.txt -x!*.html 
अपने उदाहरण के साथ

तो, यह "FILENAME" को नामित फ़ाइलों को छोड़कर files.zip को सभी फाइलों को जोड़ना होगा या कि * .extension वाइल्डकार्ड मिलान नहीं हुआ:

7za a -tzip files.zip * -x!FILENAME -x!*.extension 
+0

धन्यवाद, यह – PenguinSource

+1

करेगा भविष्य के संदर्भ के लिए: '-x! * एक्सटेंशन 'काम नहीं करता है (कम से कम रिकर्सिव उप-निर्देशिकाओं के लिए)। '-x! * एक्सटेंशन' काम करता है। – Samaursa

+2

शक्तियों में सभी * .extension को अनदेखा करने के लिए "-xr! *। एक्सटेंशन" का उपयोग करें। उद्धरण –

1

यदि आप बैच स्क्रिप्ट का उपयोग कर रहे हैं तो बचने के लिए मत भूलना! निशान।

7z a -xr^^!*.xml "dest_dir.zip" "Source_dir" 

मुझे लंबे समय लिया पता लगाने के लिए :)

धन्यवाद।

संबंधित मुद्दे