इतना वास्तविक प्रश्न है - क्या किसी को इस बात का अंदाजा है कि M-BM-
अन्य पात्रों को खोए बिना विशेष चरित्र को कैसे हटाया जाए ?
मेरे पास पाठ का एक तार है:
" . . ."
अर्थात्
space dot space dot space dot
मैं इस स्ट्रिंग की सभी आवृत्तियों को पाठ फ़ाइल में प्रतिस्थापित करने का प्रयास कर रहा हूं
"..."
अर्थात्
dot dot dot
मैं sed के साथ करने की कोशिश कर रहा था:
sed -r 's:\s\.\s\.\s\.:...:g' -i sed-dots
दुर्भाग्य से, यह इनपुट फ़ाइल को थोड़ा भी नहीं बदलता है। फ़ाइल: https://www.dropbox.com/s/46zmiruy3ln85a1/sed-dots
जब मैं टेक्स्ट एडिटर में एक ही स्ट्रिंग को बदलने की कोशिश करता हूं (मैं गीन का उपयोग करता हूं) तो यह ठीक से पाया और बदल दिया जाता है।
केवल कारण मैं सोच सकता हूं कि उन स्थानों में से कुछ (या सभी) वास्तव में रिक्त स्थान नहीं हैं, लेकिन कुछ विशेष चरित्र हैं।
क्या किसी को यह पता है कि उस स्ट्रिंग को सीड (या किसी अन्य कमांड लाइन टूल) के साथ कैसे ढूंढना और बदलना है? कृपया मेरे विचार पर अपने विचार का परीक्षण करें, क्योंकि समस्या इतनी स्पष्ट नहीं है जितनी कि यह प्रतीत हो सकती है - यही कारण है कि मैंने इसके बारे में पूछा।
cat -A
मायफाइल का उपयोग करने के बाद यह समस्या लगती है कि वे स्थान रिक्त स्थान नहीं हैं, बल्कि M-BM-
विशेष चरित्र हैं। .
खोज के लिए सुझाए गए किसी भी प्रतीक का उपयोग करना एक अच्छा विचार नहीं है क्योंकि जोखिम है कुछ अन्य वर्ण हटा दिए जाएंगे।
echo
एक फ़ाइल को बिल्ली के बजाय उपयोग करने की सलाह देते हैं , कम से कम जब आप एक फ़ाइल को बिल्ली करते हैं, तो आप जानते हैं कि शेल कुछ भी व्याख्या नहीं कर रहा है, और न ही प्रतिध्वनि है।