2009-05-10 24 views
47

वर्तमान निर्देशिका में टैरबॉल में एक उपनिर्देशिका कैसे निकालें?मैं वर्तमान निर्देशिका में उपनिर्देशिका को कैसे हटा सकता हूं?

उदाहरण के लिए, wordpress से टारबॉल:

wordpress/ 
wordpress/wp-trackback.php 
wordpress/wp-config-sample.php 
wordpress/wp-settings.php 
wordpress/wp-rss2.php 
wordpress/readme.html 
wordpress/index.php 
... 

मैं कैसे वर्तमान निर्देशिका में wordpress/ के अंतर्गत सब कुछ निकालने करते हैं? दूसरे शब्दों में, यह wordpress निर्देशिका नहीं बनाएगा।

मैं कोई भाग्य के साथ इस की कोशिश की है:

tar xvfz latest.tar.gz wordpress -C ./ 

मैं जानता हूँ कि मैं इसे सामान्य रूप से निकालने और उसे वापस ले जा सकते हैं, लेकिन मैं समझ वहाँ एक शॉट में यह करने के लिए एक तरह से किया जाना है।

+0

उन लोगों के लिए और इस प्रश्न को बंद करने का सुझाव: कैसे आते हैं? –

+3

मुझे प्रोग्रामिंग संदर्भ में यह सटीक समस्या आई है। आइए थोड़ी अधिक व्यापक, लोगों की कोशिश करें - अगर एस/वर्डप्रेस/कर्नेल_सोर्स/जी "प्रोग्रामिंग से संबंधित" प्रश्न बनाने के लिए पर्याप्त है, तो यह "प्रोग्रामिंग से संबंधित" था। –

+1

@j_random_hacker - सवाल प्रोग्रामिंग से संबंधित नहीं है। सवाल मूल रूप से है "मैं एक यूनिक्स सिस्टम पर टैर उपयोगिता का उपयोग कैसे करूं?" इसके बारे में प्रोग्रामिंग से संबंधित कुछ भी नहीं है। यह यूनिक्स का उपयोग करने के लिए सर्वरफॉल्ट या फोरम पर जा सकता है। –

उत्तर

82

आप सामान्य रूप से क्यों untar नहीं करते हैं, तो बस:

mv wordpress/.* . 
mv wordpress/* . 
rmdir wordpress 

लेकिन अफसोस, वहाँ:

tar --strip-components=1 -zxvf wordpress.tgz 
+3

मैं उम्मीद कर रहा था कि एक आदेश में ऐसा करने का एक तरीका था। –

+1

दिलचस्प बात यह है कि स्ट्रिप घटक मेरे फ्रीबीएसडी बॉक्सन के लिए एक विकल्प है, लेकिन मेरे पुराने लिनक्स इंस्टॉल के लिए नहीं। –

+0

+1। ध्यान दें, अगर टैरिफाइल में वर्डप्रेस/वर्डप्रेस नामक फ़ाइल या निर्देशिका होती है, तो आपका दूसरा एमवी कमांड विफल हो जाएगा। (लेकिन छुपे हुए फ़ाइल मामले को पकड़ने के लिए कुडोस।) –

6

हैरानी की बात है, मेरे tar (जीएनयू टार v1.16) एक नहीं है प्रारंभिक पथनाम तत्वों को पट्टी करने का विकल्प।

हालांकि, ऐसा लगता है कि हाल के संस्करण --strip-components=number पैरामीटर खेलते हैं, जो पथ की शुरुआत से कई व्यंजनों को पट्टी कर देगा।

मेरे जैसे आप एक पुराने tar उपयोग कर रहे हैं, और आप निश्चित है कि संग्रह एक निर्देशिका या फ़ाइल wordpress/wordpress नामित शामिल नहीं करता है, तो आप हमेशा ही . करने के लिए wordpress से एक सिमलिंक बना सकता है, तो हमेशा की तरह निकालने हैं:

ln -s . wordpress 
tar xvfz latest.tar.gz wordpress 
rm wordpress 
+0

मेरे पास मौजूद बॉक्स में "स्ट्रिप-घटक" पैराम नहीं है, इसलिए सिम्लिंक विचार एक दिलचस्प है एक। मैं मदद नहीं कर सकता लेकिन आश्चर्यचकित हूं कि क्या कुछ ऐसा है जो हम गायब हैं। यूनिक्स इस तरह है ... आम तौर पर कुछ गैर-स्पष्ट तरीका है कि आप केवल पूछकर सीख सकते हैं। इसलिए मेरा सवाल! –

+0

@Cory: ठीक है, मुझे लगता है कि इसका जवाब है "टैर डेवलपर्स को एहसास हुआ, और - स्ट्रिप-घटक विकल्प पेश किया।" :) –

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