मैं टेक्स्ट फ़ाइल में हेरफेर करने और पाठ से गैर-ASCII वर्णों को हटाने का प्रयास कर रहा हूं। मैं लाइन को हटाना नहीं चाहता। मैं केवल अपमानजनक पात्रों को हटाना चाहता हूं।गैर-ASCII वर्णों को हटाने का प्रयास केवल
sed '/[\x80-\xFF]/d'
मैं टेक्स्ट फ़ाइल में हेरफेर करने और पाठ से गैर-ASCII वर्णों को हटाने का प्रयास कर रहा हूं। मैं लाइन को हटाना नहीं चाहता। मैं केवल अपमानजनक पात्रों को हटाना चाहता हूं।गैर-ASCII वर्णों को हटाने का प्रयास केवल
sed '/[\x80-\xFF]/d'
सुझाव दिया समाधान sed, उदा के विशिष्ट संस्करण के साथ विफल हो सकता है: मैं काम करने के लिए निम्नलिखित अभिव्यक्ति पाने के लिए कोशिश कर रहा हूँ जीएनयू sed 4.2.1।
tr
का उपयोग करना:
tr -cd '[:print:]' < yourfile.txt
यह [\x20-\x7e]
में नहीं कोई भी वर्ण निकाल देंगे।
यदि आप उदा। रखना चाहते हैं लाइन फ़ीड, बस \n
जोड़ें:
tr -cd '[:print:]\n' < yourfile.txt
तुम सच में सभी ASCII वर्ण (यहां तक कि नियंत्रण कोड) रखना चाहते हैं:
tr -cd '[:print:][:cntrl:]' < yourfile.txt
यह [\x00-\x7f]
में नहीं कोई भी वर्ण निकाल देंगे।
अरे स्पीकर, टेक्स्ट फ़ाइल के स्वरूप को संरक्षित करने का कोई तरीका है। Tr कमांड एक निरंतर लाइन पर सबकुछ सही करता है? –
@ बोसरा: मैंने लाइन फ़ीड्स को संरक्षित करने के लिए एक उदाहरण जोड़ा। – speakr
मैन, अगर मैं इसे कुछ और बार ऊपर उठा सकता हूं तो मैं चाहता हूं कि –
देखें [यह] (http://stackoverflow.com/questions/3337936/remove-non-ascii-characters-from-csv) उत्तर। – speakr
इस धागे का उत्तर हो सकता है कि आप देख रहे हैं http://stackoverflow.com/questions/8571601/skip-remove-non-ascii-character-with-sed – Ifthikhan
आपका आदेश गैर-असीसी वर्ण वाली सभी पंक्तियों को हटा देगा। यदि आप जो चाहते हैं वह नहीं है, तो डुप्लिकेट प्रश्नों की जांच करें –