url से टार फ़ाइल का अनज़िप आंशिक फ़ोल्डर


0

मेरे पास एक url है जो एक उच्च आकार के टार फ़ाइल की ओर जाता है, 200gb के आसपास, मुझे अपने लिनक्स सिस्टम में उस फ़ाइल का एक फ़ोल्डर निकालने की आवश्यकता है। बड़े फ़ाइल आकार के कारण मैं अपने लिनक्स सिस्टम में पूरी फ़ाइल डाउनलोड नहीं करना चाहता। इसके अलावा, मेरे पास सोर्स सिस्टम तक नहीं पहुंच है।

वहाँ tar.gz फ़ाइल का केवल एक छोटा सा हिस्सा निकालने के लिए कोई रास्ता नहीं है?

जवाबों:


0

केवल विशेष निर्देशिका निकालने के लिए आपको सटीक फ़ाइल नाम जानना आवश्यक है। वाइल्डकार्ड टार के साथ काम नहीं करते हैं। और कमांड जैसा दिखेगा

curl -s -o - <URL>|tar xz /path/file1 /path/file2  ...

0

tarप्रारूप एक फ़ाइल (या एक निर्देशिका) को संबोधित सीधे अनुमति नहीं है - इस तथ्य के कारण है, कि टी वानर ar chives क्रमिक रूप से एक बैकअप माध्यम से पढ़ा जा जाहिर कर रहे थे।

आप क्या कर सकते हैं, संबंधित भागों को निकाले जाने के बाद प्रक्रिया को रोक दें। आप की तर्ज पर कुछ करना होगा

curl -o - 'http://your/url' | tar -xvz your_filter

यह शुरुआत से शुरू होने वाली फ़ाइल को डाउनलोड करेगा और संबंधित हिस्सों को निकालेगा, एक बार जब आपके पास सब कुछ होगा, तो आप बाकी डाउनलोड करने से बचने के लिए प्रक्रिया को रोक सकते हैं।

आपके पास स्रोत सर्वर तक किस तरह की पहुंच है, इसके आधार पर, आप और भी बेहतर कर सकते हैं: क्या आपके पास PHP बिना सेव मोड के है? यदि हाँ, तो आप अपने shell_execमित्रों और मित्रों से जो कुछ भी चाहते हैं, निकाल सकते हैं ।


IMO आप को हटाने की जरूरत fसे tarया का उपयोग f -इनपुट फ़ाइल के रूप में STDIN उपयोग करने के लिए
रोमियो Ninov

1
@RomeoNinov धन्यवाद, अच्छी पकड़ - मेरे जवाब को संपादित किया।
यूजेन रीक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.