CentOS 4.4 में, मैं पाठ फ़ाइल से अनुक्रम से कैसे बच सकता हूं?


17

टेक्स्ट फाइल से कलर-कोड एस्केप सीक्वेंस को स्ट्रिप करने के लिए मैं किस कमांड का उपयोग कर सकता हूं? आदर्श रूप से कुछ मैं के माध्यम से पाइप कर सकते हैं। अगर मेरे पास रंगीन टेक्स्ट इंद्रधनुष का एक गुच्छा है, तो अंतर में क्या जाता है:

cat rainbox.txt | *something* > plain.txt

मैं CentOS 4.4 पर बैश में काम कर रहा हूं।

जवाबों:


30

प्रयत्न:

sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g"

3 उत्तरों में से यह एकमात्र ऐसा काम था।
SLM

4

cat rainbox.txt | col -b > plain.txt


इस पर कोई रोक-टोक क्यों नहीं है? एकमात्र समाधान जो मेरे लिए काम करता है! और यह बहुत आसान है!
फ्यूनहे

3
क्योंकि यह मेरे लिए काम नहीं करता है।
lzap

6
यह केवल पलायन पात्रों से छुटकारा दिलाता है, न कि उनके तर्कों से।
हारून

1

आप नहीं कर सकते हैं, क्योंकि एक भागने का क्रम सामान्य रूप से अच्छी तरह से परिभाषित नहीं है - आपको यह जानने की जरूरत है कि आपके भागने के क्रम को किस तरह के टर्मिनल के लिए डिज़ाइन किया गया है। यदि आप समस्या को "पट्टी ANSI रंग अनुक्रम" (काफी संभावना धारणा), कुछ इस तरह से सीमित करना चाहते हैं:

sed 's/\o033\[[0-9]*;[0-9]*m//g'

चाल चलनी चाहिए।


1

निम्नलिखित कब्जा [Xm , [X; मीटर , [X; Ym , और [X; Y; ZM संभावनाओं (उनमें से कुछ तकनीकी रूप से गलत हो सकता है, लेकिन वे काम करते हैं और जंगलों में देखा गया है):

sed -r 's|\x1B\[[0-9]{1,2};?(;[0-9]{1,2}){,2}m||g'
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.