2010-06-02 14 views
14

में एक फ़ाइल को अपडेट करना application.tar.gz जैसे संपीड़ित संग्रह फ़ाइल को देखते हुए, जिसमें application/x/y/z.jar फ़ोल्डर है, मैं z.jar का अपना नवीनतम संस्करण ले सकता हूं और इसके साथ संग्रह को रीफ्रेश/रीफ्रेश कर सकता हूं ।एक संपीड़ित टैर

क्या निम्न में से कुछ के अलावा ऐसा करने का कोई तरीका है?

tar -xzf application.tar.gz 
cp ~/myupdatedfolder/z.jar application/x/y 
tar -czf application application.tar.gz 

मुझे समझ में राल में -u स्विच पूरी बात untar से बचने के लिए काम का हो सकता है, लेकिन मैं कैसे वास्तव में इसका इस्तेमाल करने के अनिश्चित हूँ।

उत्तर

19

ठीक है, मुझे जवाब मिला।

आप एक ज़िपित संग्रह के साथ tar -u का उपयोग नहीं कर सकते हैं। तो मैंने जो समाधान इस्तेमाल किया वह निम्नलिखित था। ध्यान दें कि मैंने z.jar फ़ाइल को इस उद्देश्य के लिए application/x/y नामक वर्तमान निर्देशिका में बनाए गए फ़ोल्डर में स्थानांतरित कर दिया है।

gzip -d application.tar.gz 
tar -uf application.tar application/x/y/z.jar 
gzip application.tar 

जब मैंने किया था एक tar -tf application.tar (अपडेट के बाद, gzip से पहले) यह ठीक से पता चला है।

4

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

हालांकि, अगर फ़ाइल एक बाइनरी है। मुझे समाधान के बारे में कोई जानकारी नहीं है।

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