sed
पहला एन अक्षर प्रिंट करने के लिए एक लाइनर का उपयोग करना क्या है ? मैं निम्नलिखित कर रहा हूँ:
grep -G 'defn -test.*' OctaneFullTest.clj | sed ....
sed
पहला एन अक्षर प्रिंट करने के लिए एक लाइनर का उपयोग करना क्या है ? मैं निम्नलिखित कर रहा हूँ:
grep -G 'defn -test.*' OctaneFullTest.clj | sed ....
जवाबों:
उपयोग न करें sed
, उपयोग करें cut
:
grep .... | cut -c 1-N
यदि आप उपयोग करना चाहते हैं sed
:
grep ... | sed -e 's/^\(.\{12\}\).*/\1/'
sed -r 's/^(.{12}).*/\1/'
।
-r
स्पष्ट रूप से लिनक्स पर उपलब्ध है, लेकिन मैक पर नहीं।
cut -c 1-N
(जहाँ N एक संख्या है) मेरे Cygwin इंस्टॉलेशन (cygwin v। 2.6, cut v। 8.25) पर काम करता है , OS X पर, sed -E
इसके बजाय sed -r
, अन्यत्र उपयोग किया जाता है।
colrm x
उदाहरण के लिए, यदि आपको पहले 100 वर्ण चाहिए:
cat file |colrm 101
यह लगभग सालों से है और ज्यादातर linux और bsd के (freebsd for sure), आमतौर पर डिफ़ॉल्ट रूप से होता है। मैं कभी टाइप करने के लिए याद नहीं कर सकते apt-get install colrm
।
colrm
utf8 को समझता है।
grep का उपयोग करने की आवश्यकता नहीं है
एक उदाहरण:
sed -n '/searchwords/{s/^\(.\{12\}\).*/\1/g;p}' file
सख्ती से sed के साथ:
grep ... | sed -e 's/^\(.\{N\}\).*$/\1/'
सिर के बारे में कैसे ?
echo alonglineoftext | head -c 9
cut
जबकि इसे काटता नहींsed
है।