बहुत सारी फ़ाइलों में जटिल ढूँढें और बदलें (हटाएं) कैसे करें?


1

मेरी समस्या सिर्फ कई फ़ाइलों में ऐसा करने की नहीं है, लेकिन यह भी है कि मुझे जो खोजने की आवश्यकता है उसकी जटिलता काफी पेचीदा है। मेरे आवेदन के .NET संस्करण को अपग्रेड करने के बाद, असेंबली संस्करण संख्या को छोड़कर कुछ संसाधन फ़ाइलों के कुछ हिस्सों को डुप्लिकेट किया गया है, जो कि असंगत है।

यहाँ एक उदाहरण संसाधन फ़ाइल है, जिसमें मेरी समस्या प्रदर्शित होनी चाहिए:

<data attribute="value" >
    <value>Version="dot_net_4_assembly_version_number", <!--This element is fine--></value>
</data>

<data attribute="anotherValue" >
    <value>Version="dot_net_2_assembly_version_number", "identical_data_here"</value>
</data>

<data attribute="anotherValue" >
    <value>Version="dot_net_4_assembly_version_number", "identical_data_here"</value>
</data>

तो मुझे जो कुछ चाहिए वह कुछ प्रकार के टूल, या कुछ कमांड स्क्रिप्ट या कुछ (यदि यह भी संभव है) जो प्रत्येक फ़ाइल के माध्यम से खोज करेगा, और xml तत्वों में व्हेरेनॉल मानों की पहचान समान है, सिवाय Version=...संख्याओं के साथ मैच के .NET 2 और 4 संस्करण, और फिर xml तत्व का .NET 2 संस्करण निकालें।

इसे कैसे प्राप्त किया जाए? क्या ऐसा करने के लिए किसी प्रकार की बैश-कमांड स्क्रिप्ट की आवश्यकता होगी? (साथ ही, उम्मीद है कि मैं यह सवाल सही जगह पर पूछ रहा हूं, मुझे बताएं कि मैं नहीं हूं)


1
नोटपैड ++ नौकरी के लिए सही उपकरण लगता है। आप कौन सा ओएस उपयोग कर रहे हैं?
LPChip

इसके अलावा, सॉफ्टवेयर के लिए पूछना सुपरयूजर पर यहां ऑफ-टॉपिक है। लेकिन क्योंकि आप किसी भी विधि के लिए पूछते हैं, लिपियों में शामिल है, यह विषय है। आपको अपने पोस्ट को संपादित करने की आवश्यकता हो सकती है क्योंकि अन्य लोग अभी भी इसे ऑफ़-टॉपिक मान सकते हैं, इस कारण से कि आप अपना प्रश्न कैसे बता सकते हैं।
LPChip

@LPChip Win10। नोटपैड ++ पर विचार करने के लिए भी नहीं सोचा था, मैंने सिर्फ यह मान लिया था कि इसमें ऐसी विशेषताएं नहीं होंगी। सुपरयूजर पर भी प्रासंगिकता और "ऑफ-टॉपिकनेस" पर टिप के लिए धन्यवाद, विशेष रूप से प्रश्न को फिर से शब्द कैसे दें, इस पर कोई सलाह?
डैनी गुडॉल

1
बदलें "मुझे कुछ प्रकार के उपकरण की आवश्यकता है, या ..." मैं कैसे कर सकता हूं "के लिए
LPChip

जवाबों:


0

आप नियमित अभिव्यक्तियों और (उदाहरण के लिए) नोटपैड ++ के साथ काफी जटिल खोज-और-प्रतिस्थापित कार्य कर सकते हैं। हालाँकि, यह संभव नहीं हो सकता है जब आप जिस फ़ाइल को बदलने की कोशिश कर रहे हैं, उसमें ठीक उसी तरह से सहेजे गए आइटम नहीं हैं।

व्यक्तिगत रूप से, चूंकि फ़ाइल एक्सएमएल है, मैं बस एक प्रोग्रामिंग वातावरण का उपयोग करूंगा, जैसे कि आप जिस पर उपयोग किए जाते हैं, वह XML फ़ाइलों को पढ़ने और लिखने के लिए एक समस्या लिखने के लिए। यह एक जटिल नियमित अभिव्यक्ति लिखने की तुलना में शायद बहुत आसान हो सकता है।

वैकल्पिक रूप से, आप फ़ाइलों को पढ़ने और उन्हें बदलने के लिए XML-> XSLT का उपयोग कर सकते हैं, लेकिन मैं उस विकल्प के लिए जाऊंगा, जिससे मैं सबसे अधिक परिचित हूं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.