शेल स्क्रिप्ट के माध्यम से फ़ाइल से किसी भी स्ट्रिंग को कैसे हटाया जाए?


9

मैं स्ट्रिंग को हटाने की कोशिश करता हूं .bash_profile। स्ट्रिंग तब जोड़ी जाती है जब मेरी शेल स्क्रिप्ट चलती है:

Bash_profile पर मेरा स्ट्रिंग निम्नानुसार है:

# for Myapllication
export MYAPP_HOME=/opt/myapp

.bash_profileजब मैपन के माध्यम से हटा दिया जाता है तो मैं स्ट्रिंग्स को निकालना चाहता हूं rpm

शेल स्क्रिप्ट के माध्यम से फ़ाइल से किसी भी स्ट्रिंग को कैसे हटाया जाए? (या संभव वैकल्पिक विधि)

जवाबों:


11

आप किसी पाठ फ़ाइल से एक स्ट्रिंग निकाल सकते हैं sed (अन्य उपकरण मौजूद हैं)।

उदाहरण के लिए:

sed -i -e '/myapp/d' .bash_profile

.bash_profile स्ट्रिंग वाली हर लाइन से निकालता है myapp


10

~/.bash_profileउपयोगकर्ता की होम डायरेक्टरी में एक फाइल रहती है। ऐसी फाइल पूरी तरह से उपयोगकर्ता के नियंत्रण में है। वैश्विक अभिनय आदेशों rpmको ऐसी फ़ाइलों को बदलने के लिए नहीं माना जाता है।

  • आपके पास आमतौर पर एक आधार विन्यास फाइल होती है, जिसे आरपीएम पैकेज द्वारा वितरित किया जाता है।

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

  • फिर आपके घर निर्देशिका में आपकी व्यक्तिगत कॉन्फ़िगरेशन फ़ाइलें हैं जिनका उपयोग आप अपनी व्यक्तिगत प्राथमिकताओं के साथ वैश्विक सेटिंग को ओवरराइड करने के लिए कर सकते हैं।

जैसी आज्ञा rpmकेवल पहले वाली को बदलना चाहिए और बाद वाली को कभी नहीं बदलना चाहिए।


क्या आप इस विषय की जांच के लिए URL सुझा सकते हैं?
गयोह

1
@Gyhot unix.stackexchange.com/questions/77518/… अच्छा है। यदि आपके लक्ष्य वितरण में /etc/profile.dनिर्देशिका है, तो उस exportपंक्ति वाली फ़ाइल को वहां छोड़ दें। अन्यथा, आप संपादित कर सकते हैं /etc/profile, लेकिन सिस्टम प्रशासक द्वारा अनुकूलन को बर्बाद नहीं करने के लिए बहुत सावधान रहें।
गिल्स एसओ- बुराई को रोकें '29


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