मैं एक्स निर्देशिका को अपने माता-पिता को शामिल नहीं करना चाहता हूं


9
tar cvf /var/lib/backup/sample.tar /home/user/.project

हालांकि, जब मैं निकालता हूं, तो मुझे इसके माता-पिता भी मिलते हैं

/backup/
  - /home/
     - /user/
        - .project/

यह टार कमांड इसे काम करता है क्योंकि इसमें इसके माता-पिता ( userउदाहरण के लिए अन्य फ़ोल्डर ) में कुछ और शामिल नहीं है ।

मैं यह प्रोग्रामेटिक रूप से करना चाहता हूं, इसलिए वर्तमान वर्किंग डाइरेक्टरी को बदलना /home/user/वास्तव में एक विकल्प नहीं है। क्या यह करना मुमकिन है?

जवाबों:


17

आप या तो टॅरिंग करने से पहले डायरेक्टरी -Cमें बदलाव के विकल्प का उपयोग कर सकते हैं या निष्कर्षण पर /home/userउपयोग कर सकते हैं --strip-components 2

tar cvfC /var/lib/backup/sample.tar /home/user .project
#                              Note the space ^
tar cvf /var/lib/backup/sample.tar /home/user/.project
tar Cxf /backup /var/lib/backup/sample.tar --strip-components 2

1
+1 शांत .. मुझे बस -Cस्विच तब मिला जब मैं मैन पेज देख रहा था , लेकिन इसका कोई मतलब नहीं था .. मुझे और अधिक लग रहा था जैसे कि यह अनटार के दौरान उपयोग किया जाएगा। कुछ नया सीखा।
लेवोन

@ केविन धन्यवाद। सी विकल्प निर्दोष रूप से काम करता है। धन्यवाद!
User007

2
मैं इसे इस तरह काम नहीं कर सका। पढ़ने अनुसार gnu.org/software/tar/manual/tar.html#SEC118 मैं निम्नलिखित फार्म के साथ सफल रहा था: राल CVF /var/lib/backup/sample.tar -सी / घर / उपयोगकर्ता .project
Aivar

2

मुझे लगता है कि यदि आप cdउस टॉपवेल डायरेक्टरी को पसंद करते हैं जिसे आप tarफ़ाइल बनाना चाहते हैं , तो आपको यह समस्या नहीं होनी चाहिए। अर्थात,

cdto user, tarup .project.. आप टार फ़ाइल के लिए गंतव्य /var/... को पहले की तरह निर्दिष्ट कर सकते हैं ।

या फिर कोई कारण नहीं कर सकते हैं आप / नहीं करना चाहता है cdके लिए user?


हाँ। वह एक उपाय होगा। धन्यवाद। लेकिन मुझे उम्मीद है कि एक बेहतर तरीका है? मैं इस प्रोग्राम के सहयोगी को wtih से निपटना चाहता हूं, और मैं os.chdir(base_dir)हर समय अपने कोड में जारी नहीं करना चाहता हूं :) इसलिए अगर यह इस से बाहर का रास्ता है तो अच्छा होगा। धन्यवाद
User007

@ User007 आह .. ठीक है, मैं देख रहा हूं। आप उस आवश्यकता को शामिल करने के लिए अपने प्रश्न को अपडेट करना चाह सकते हैं। जिस तरह से अच्छा उपयोगकर्ता आईडी :)
लेवॉन

धन्यवाद। हाँ। मैंने अभी-अभी अपना प्रश्न अपडेट किया है। ओह, यह मेरी पहचान छिपाने के लिए है ...
User007

1
@ User007 007 भाग से प्यार करता हूँ .. और लगता है कि आप पायथन में भी काम कर रहे हैं (जो मेरे पसंदीदा में से एक है)
लेवॉन

:) हाँ। ठीक है हमारे दोस्त Kevinने मुझे सही आदेश के साथ मदद की। इसलिए मैं उसे टिक दूंगा। लेकिन मैंने तुम्हें उकसाया। धन्यवाद!
User007
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.