जीएनयू के tar(1)
पास एक स्वच्छ विकल्प है --transform
। मैन पेज से:
--transform, --xform विस्तार
फ़ाइल नाम को बदलने के लिए EXPRESSION की जगह sed का उपयोग करें
यह मक्खी पर पथ नामों के परिवर्तन की अनुमति देता है क्योंकि संग्रह को निकाला जा रहा है ताकि आप यह नियंत्रित कर सकें कि इसे कहाँ और कैसे निकाला जाएगा।
मेरा सवाल है, क्या सीटू में एक समान परिवर्तन करने का एक तरीका है ; यानी, बिना आर्काइव निकाले?
उदाहरण
[user@host]$ tar tf test.tar
./foo/blah ./foo/bleh
[user@host]$ some_deep_magic 's/foo/bar/' test.tar
[user@host]$ tar tf test.tar
./bar/blah ./bar/bleh
उदाहरण
मैं tar
मूल रूप से अंत उपयोगकर्ताओं के साथ संघर्ष करने के लिए एक संग्रह वितरित कर रहा हूं और यह चाहूंगा कि यह मेरे से हस्तक्षेप किए बिना सही रास्ते पर आ जाए। मैं संग्रह को निकालने, निर्देशिकाओं का नाम बदलने और संग्रह के रूप में दोहराए जाने के तुच्छ समाधान से बचने की कोशिश कर रहा हूं।