grep का उपयोग करने से पहले () वर्ण निकालें


12

मुझे चरित्र से पहले पात्रों को निकालने की आवश्यकता है '('। मेरी फ़ाइल संरचना है:

गुलाब (अच्छा) ook

डेज़ी () नहीं

लिली (बुरा) ठीक

सूरजमुखी () अच्छा

मुझे आउटपुट फाइल की जरूरत है:

rose

daisy

lilly

sunflower

किसी को भी इस के लिए आदेश बता सकते हैं .....

awk, grep या sed बेहतर हैं ...


awk -F "(" '{प्रिंट $ 1}' फ़ाइल मैंने इस कमांड और इसके काम करने की कोशिश की है। मैं grep में कमांड जानना चाहता हूं ...
रिन्सी राफेल

अद्यतन उत्तर।
cuonglm

जवाबों:



7

का उपयोग कर cut:

$ <file cut -d \( -f 1
rose

daisy

lilly

sunflower

का उपयोग कर sed:

$ <file sed -e 's/\(.*\)(.*$/\1/'
rose

daisy

lilly

sunflower

4
ध्यान दें कि व्यवहार (प्रति पंक्ति एक से अधिक होने पर भिन्न होगा ।
स्टीफन चेज़लस


0

आप कट कमांड का उपयोग कर सकते हैं:

cut -f1 -d "(" file_name

1
यह ऊपर दिए गए @ प्रहमु द्वारा दिए गए उत्तर से कैसे भिन्न है?
क्रिस डाउन

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