मैं एक निर्देशिका का बैकअप लेने के लिए 7-ज़िप का उपयोग करना चाहूंगा, लेकिन मैं चाहूंगा कि इसे ".svn" (स्रोत के पेड़ में कहीं भी) नाम की सभी निर्देशिकाओं से बाहर रखा जाए। क्या किसी को पता है कि यह संभव है और उस मामले में कैसे?
मैं एक निर्देशिका का बैकअप लेने के लिए 7-ज़िप का उपयोग करना चाहूंगा, लेकिन मैं चाहूंगा कि इसे ".svn" (स्रोत के पेड़ में कहीं भी) नाम की सभी निर्देशिकाओं से बाहर रखा जाए। क्या किसी को पता है कि यह संभव है और उस मामले में कैसे?
जवाबों:
सभी .svn निर्देशिकाओं को बाहर करने के लिए आपको -xr!?svn\*
स्विच जोड़ना होगा
उदाहरण के लिए निम्न C:\Project\To\Backup
निर्देशिका को संतुष्ट करने वाले किसी भी फ़ोल्डर को छोड़कर निर्देशिका का बैकअप बनाएगा ?svn
:
"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!?svn\* Project.zip C:\Project\To\Backup\*
?
.svn
SkipMe
-xr!SkipMe\*
7-ज़िप का उपयोग करने के बजाय .svn (या संभावित रूप से _svn) फ़ोल्डरों को बाहर करने के लिए, मैं एक अस्थायी फ़ोल्डर में काम करने वाली कॉपी को निर्यात करने के लिए svn एक्सपोर्ट कमांड (SlikSVN से svn.exe का उपयोग करें ) का उपयोग करने की सलाह दूंगा :
svn export C:\Path\To\WC C:\Backup\Staging
फिर निम्नानुसार 7-ज़िप का उपयोग करें:
7z.exe a "C:\Parth\To\Archive" "C:\Backup\Staging\*" -bd t7z -v2g -r
फिर स्टेजिंग फ़ोल्डर को हटा दें।
यह वही है जो मैं अपनी स्थानीय कामकाजी प्रतियों का बैकअप लेने के लिए करता हूं।
आप फ़ाइलों या निर्देशिकाओं की सूची का उपयोग करके 7zip के साथ फ़ाइलों को बाहर कर सकते हैं:
/path/to7Zip/7z a -bd f:/backup/backup_2009-08-23_daily.zip home \
'-xr@\path\to\backup_daily_exclude.lst'
बहिष्कृत फ़ाइल इस तरह दिखाई देती है:
home\Photos\iPod*
home\dhltd\*
BlogMatrix\Sparks\db\*.archive
home\eclipse\*
.svn
कुंजी -xr है और विशेष रूप से "आर" जो इंगित करता है कि निर्देशिका के प्रत्येक स्तर के लिए पुनरावर्ती सूची लागू करें। आप निरपेक्ष और पुनरावर्ती बहिष्करण के लिए एक को छोड़कर 2 फ़ाइल सूचियों का उपयोग करना चाह सकते हैं। उपरोक्त एक बैश स्क्रिप्ट से है जो साइबरविन में चलती है।
जब मैंने इस्तेमाल किया
"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\* aufs2-util.tar aufs2-util\*
इसे .गित निर्देशिका को जोड़ना समाप्त हो गया, जिसे मैं नहीं चाहता था, इसे बदलकर
"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\ aufs2-util.tar aufs2-util\*
मनचाहा परिणाम मिला।
जब मैंने इस्तेमाल किया
7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!WEB-INF\*
WEB-INF निर्देशिका को बाहर नहीं किया गया था। Dir नाम से पहले तारांकन जोड़ना
7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!*WEB-INF\*
मनचाहा परिणाम मिला।
मेरे लिए, मैं मावेन कोड निर्देशिकाओं के एक समूह का बैकअप लेने की कोशिश कर रहा था और "लक्ष्य" नामक किसी भी निर्देशिका को बाहर करना चाहता था:
"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!*\target\* site.zip C:\code\site\
प्रासंगिक को बाहर पैरामीटर था -xr!*\target\*
।